Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members

VIEW::Message Class Reference
[Messages]

General Message class. More...

#include <message.h>

Inheritance diagram for VIEW::Message:

VIEW::CompositeMessage VIEW::CreateRepresentationMessage VIEW::DatasetMessage VIEW::DeselectControlsMessage VIEW::DockingFinishedMessage VIEW::GenericSelectionMessage VIEW::GeometricObjectSelectionMessage VIEW::MolecularTaskMessage VIEW::NewSelectionMessage VIEW::RegisterHelpSystemMessage VIEW::RepresentationMessage VIEW::SceneMessage VIEW::ShowDisplayPropertiesMessage List of all members.

Public Member Functions

Constructors and Destructor
 Message () throw ()
 Default Constructor.
 Message (const Message &message) throw ()
 Copy constructor.
virtual ~Message () throw ()
 Destructor.
Accessors: inspectors and mutators
void setSender (const ConnectionObject *sender) throw ()
 Change the sender.
const ConnectionObjectgetSender () const throw ()
 Non-mutable inspection of the sender.
void setDeletable (bool flag=true) throw ()
 Change the deletable flag.
bool isDeletable () const throw ()
 Test if this message is deletable.

Detailed Description

General Message class.

Message is the base class of all message classes and provides a base interface. Message classes will be sent through the ConnectionObject tree for the purpose of communication between several ConnectionObject classes. Each ConnectionObject handels in its onNotify() method messages that are relevant for that class by means of RTTI. This class can be given a sender object that is a pointer to the ConnectionObject that has initially sent the message. This methods concerning the sender object are internally used and no user interaction is necessary. A message can be deletable or not. If a message is deletable it will be deleted after all ConnectionObject objects has been informed of this message. Therefore a deletable message must be created with the new command. All messages should be created with the new command, since they will be automatically deleted after all ConnectionObjects have been notified. See ConnectionObject for further information concerning message handling. and message posting.


Constructor & Destructor Documentation

VIEW::Message::Message  )  throw ()
 

Default Constructor.

The state of this message is:

  • sender - set to 0
  • deletable - set to false

VIEW::Message::Message const Message message  )  throw ()
 

Copy constructor.

virtual VIEW::Message::~Message  )  throw () [virtual]
 

Destructor.


Member Function Documentation

const ConnectionObject* VIEW::Message::getSender  )  const throw ()
 

Non-mutable inspection of the sender.

This method will be used internally by ConnectionObject::onNotify.

See also:
ConnectionObject::onNotify

bool VIEW::Message::isDeletable  )  const throw ()
 

Test if this message is deletable.

void VIEW::Message::setDeletable bool  flag = true  )  throw ()
 

Change the deletable flag.

If the parameter flag is set to true the message is set to deletable and will be automatically deleted after all ConnectionObject objects are notified of this message. It is important that the message is created by the new command to avoid segmentation faults.

If the parameter flag is set to false the message will not be automatically deleted.
Avoid creating non-deletable messages because it can result in segmentation faults.
Parameters:
flag the new deletable state of this message

void VIEW::Message::setSender const ConnectionObject sender  )  throw ()
 

Change the sender.

This method will be used internally by ConnectionObject::notify_.

See also:
ConnectionObject::notify_