Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
berry::IDisposable Struct Referenceabstract

#include <berryIDisposable.h>

Inheritance diagram for berry::IDisposable:
Collaboration diagram for berry::IDisposable:

Public Member Functions

 berryObjectMacro (berry::IDisposable)
 
 ~IDisposable () override
 
virtual void Dispose ()=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
 

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

The interface that should be implemented by services that make themselves available through the IAdaptable mechanism. This is the interface that drives the majority of services provided at the workbench level.

A service has life-cycle. When the constructor completes, the service must be fully functional. When it comes time for the service to go away, then the service will receive a Dispose call. At this point, the service must release all resources and detach all listeners. A service can only be disposed once; it cannot be reused.

This interface has nothing to do with OSGi services.

This interface can be extended or implemented by clients.

Definition at line 45 of file berryIDisposable.h.

Constructor & Destructor Documentation

◆ ~IDisposable()

berry::IDisposable::~IDisposable ( )
override

Member Function Documentation

◆ berryObjectMacro()

berry::IDisposable::berryObjectMacro ( berry::IDisposable  )

◆ Dispose()

virtual void berry::IDisposable::Dispose ( )
pure virtual

Disposes of this service. All resources must be freed. All listeners must be detached. Dispose will only be called once during the life cycle of a service.


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