Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
berry::IObjectWithState Struct Referenceabstract

#include <berryIObjectWithState.h>

Inheritance diagram for berry::IObjectWithState:
Collaboration diagram for berry::IObjectWithState:

Public Member Functions

 berryObjectMacro (berry::IObjectWithState) virtual void AddState(const QString &id
 
virtual SmartPointer< StateGetState (const QString &stateId) const =0
 
virtual QList< QString > GetStateIds () const =0
 
virtual void RemoveState (const QString &stateId)=0
 
- Public Member Functions inherited from berry::Object
virtual QString GetClassName () const
 
virtual Reflection::TypeInfo GetTypeInfo () const
 
virtual QList< Reflection::TypeInfoGetSuperclasses () const
 
virtual void Delete ()
 
QDebug Print (QDebug os, Indent Indent=0) const
 
virtual QString ToString () const
 
virtual uint HashCode () const
 
virtual bool operator< (const Object *) const
 
void Register () const
 
void UnRegister (bool del=true) const
 
int GetReferenceCount () const
 
void SetReferenceCount (int)
 
void AddDestroyListener (const MessageAbstractDelegate<> &delegate) const
 
void RemoveDestroyListener (const MessageAbstractDelegate<> &delegate) const
 
virtual bool operator== (const Object *) const
 

Public Attributes

const SmartPointer< State > & state
 

Additional Inherited Members

- Public Types inherited from berry::Object
typedef Object Self
 
typedef berry::SmartPointer< SelfPointer
 
typedef berry::SmartPointer< const SelfConstPointer
 
typedef berry::WeakPointer< SelfWeakPtr
 
typedef berry::WeakPointer< const SelfConstWeakPtr
 
- Static Public Member Functions inherited from berry::Object
static const char * GetStaticClassName ()
 
static Reflection::TypeInfo GetStaticTypeInfo ()
 
static QList< Reflection::TypeInfoGetStaticSuperclasses ()
 
- Protected Member Functions inherited from berry::Object
 Object ()
 
virtual ~Object ()
 
virtual QDebug PrintSelf (QDebug os, Indent indent) const
 
virtual QDebug PrintHeader (QDebug os, Indent indent) const
 
virtual QDebug PrintTrailer (QDebug os, Indent indent) const
 
- Protected Attributes inherited from berry::Object
QAtomicInt m_ReferenceCount
 
QMutex m_ReferenceCountLock
 

Detailed Description

An object that holds zero or more state objects. This state information can be shared between different instances of IObjectWithState.

Clients may implement, but must not extend this interface.

See also
AbstractHandlerWithState

Definition at line 39 of file berryIObjectWithState.h.

Member Function Documentation

berry::IObjectWithState::berryObjectMacro ( berry::IObjectWithState  ) const

Adds state to this object.

Parameters
idThe identifier indicating the type of state being added; must not be null.
stateThe new state to add to this object; must not be null.
virtual SmartPointer<State> berry::IObjectWithState::GetState ( const QString &  stateId) const
pure virtual

Gets the state with the given id.

Parameters
stateIdThe identifier of the state to retrieve; must not be null.
Returns
The state; may be null if there is no state with the given id.

Implemented in berry::AbstractHandlerWithState, and berry::NamedHandleObjectWithState.

virtual QList<QString> berry::IObjectWithState::GetStateIds ( ) const
pure virtual

Gets the identifiers for all of the state associated with this object.

Returns
All of the state identifiers; may be empty, but never null.

Implemented in berry::AbstractHandlerWithState, and berry::NamedHandleObjectWithState.

virtual void berry::IObjectWithState::RemoveState ( const QString &  stateId)
pure virtual

Removes state from this object.

Parameters
stateIdThe id of the state to remove from this object; must not be null.

Implemented in berry::Command, berry::AbstractHandlerWithState, and berry::NamedHandleObjectWithState.

Member Data Documentation

const SmartPointer<State>& berry::IObjectWithState::state

Definition at line 54 of file berryIObjectWithState.h.

Referenced by berry::Command::Undefine().


The documentation for this struct was generated from the following file: