Medical Imaging Interaction Toolkit
2023.12.00
Medical Imaging Interaction Toolkit
|
#include <berryIExtensionTracker.h>
Public Types | |
enum | ReferenceType { REF_STRONG, REF_WEAK } |
Public Member Functions | |
virtual | ~IExtensionTracker () |
virtual void | RegisterHandler (IExtensionChangeHandler *handler, const IExtensionPointFilter &filter)=0 |
virtual void | RegisterHandler (IExtensionChangeHandler *handler, const QString &extensionPointId=QString())=0 |
virtual void | UnregisterHandler (IExtensionChangeHandler *handler)=0 |
virtual void | RegisterObject (const SmartPointer< IExtension > &extension, const SmartPointer< Object > &object, ReferenceType referenceType)=0 |
virtual void | UnregisterObject (const SmartPointer< IExtension > &extension, const SmartPointer< Object > &object)=0 |
virtual QList< SmartPointer< Object > > | UnregisterObject (const SmartPointer< IExtension > &extension)=0 |
virtual QList< SmartPointer< Object > > | GetObjects (const SmartPointer< IExtension > &extension) const =0 |
virtual void | Close ()=0 |
An extension tracker keeps associations between extensions and their derived objects on an extension basis. All extensions being added in a tracker will automatically be removed when the extension is uninstalled from the registry. Users interested in extension removal can register a handler that will let them know when an object is being removed.
This interface is not intended to be implemented by clients.
Definition at line 50 of file berryIExtensionTracker.h.
Enumerator | |
---|---|
REF_STRONG | Constant for strong (normal) reference holding. |
REF_WEAK | Constant for weak reference holding. |
Definition at line 53 of file berryIExtensionTracker.h.
|
virtual |
|
pure virtual |
Close the tracker. All registered objects are freed and all handlers are being automatically removed.
Implemented in berry::ExtensionTracker.
|
pure virtual |
Return all the objects that have been associated with the given extension. All objects registered strongly will be return unless they have been unregistered. The objects registered softly or weakly may not be returned if they have been garbage collected. Return an empty array if no associations exist.
extension | the extension for which the object must be returned |
Implemented in berry::ExtensionTracker.
|
pure virtual |
Register an extension change handler with this tracker using the given filter.
handler | the handler to be registered |
filter | the filter to use to choose interesting changes |
Implemented in berry::ExtensionTracker.
|
pure virtual |
Register an extension change handler with this tracker for the given extension point id.
handler | the handler to be registered |
extensionPointId | the extension point id to track |
Implemented in berry::ExtensionTracker.
|
pure virtual |
Create an association between the given extension and the given object. The referenceType indicates how strongly the object is being kept in memory. There are 2 possible values: REF_STRONG and REF_WEAK.
extension | the extension |
object | the object to associate with the extension |
referenceType | one of REF_STRONG, REF_WEAK |
Implemented in berry::ExtensionTracker.
|
pure virtual |
Unregister the given extension change handler previously registered with this tracker.
handler | the handler to be unregistered |
Implemented in berry::ExtensionTracker.
|
pure virtual |
Remove all the objects associated with the given extension. Return the removed objects.
extension | the extension for which the objects are removed |
Implemented in berry::ExtensionTracker.
|
pure virtual |
Remove an association between the given extension and the given object.
extension | the extension under which the object has been registered |
object | the object to unregister |
Implemented in berry::ExtensionTracker.