|
Medical Imaging Interaction Toolkit
2026.06.00
Medical Imaging Interaction Toolkit
|
Base class for all Annotation objects. More...
#include <mitkAnnotation.h>


Classes | |
| class | BaseLocalStorage |
| Base class for mapper specific rendering resources. More... | |
| struct | Bounds |
| Container for position and size on the display. More... | |
Public Member Functions | |
| void | SetProperty (const std::string &propertyKey, const BaseProperty::Pointer &property) |
| Set the property (instance of BaseProperty) with key propertyKey in the PropertyList of the renderer (if nullptr, use BaseRenderer-independent PropertyList). This is set-by-value. More... | |
| void | ReplaceProperty (const std::string &propertyKey, const BaseProperty::Pointer &property) |
| Replace the property (instance of BaseProperty) with key propertyKey in the PropertyList of the renderer (if nullptr, use BaseRenderer-independent PropertyList). This is set-by-reference. More... | |
| void | AddProperty (const std::string &propertyKey, const BaseProperty::Pointer &property, bool overwrite=false) |
| Add the property (instance of BaseProperty) if it does not exist (or always if overwrite is true) with key propertyKey in the PropertyList of the renderer (if nullptr, use BaseRenderer-independent PropertyList). This is set-by-value. More... | |
| void | ConcatenatePropertyList (PropertyList *pList, bool replace=false) |
| Add values from another PropertyList. More... | |
| mitk::BaseProperty * | GetProperty (const std::string &propertyKey) const |
| Get the property (instance of BaseProperty) with key propertyKey from the PropertyList of the renderer, if available there, otherwise use the BaseRenderer-independent PropertyList. More... | |
| template<typename T > | |
| bool | GetProperty (itk::SmartPointer< T > &property, const std::string &propertyKey) const |
| Get the property of type T with key propertyKey from the PropertyList of the renderer, if available there, otherwise use the BaseRenderer-independent PropertyList. More... | |
| template<typename T > | |
| bool | GetProperty (T *&property, const std::string &propertyKey) const |
| Get the property of type T with key propertyKey from the PropertyList of the renderer, if available there, otherwise use the BaseRenderer-independent PropertyList. More... | |
| template<typename T > | |
| bool | GetPropertyValue (const std::string &propertyKey, T &value) const |
| Convenience access method for GenericProperty<T> properties (T being the type of the second parameter) More... | |
| bool | GetBoolProperty (const std::string &propertyKey, bool &boolValue) const |
| Convenience access method for bool properties (instances of BoolProperty) More... | |
| bool | GetIntProperty (const std::string &propertyKey, int &intValue) const |
| Convenience access method for int properties (instances of IntProperty) More... | |
| bool | GetFloatProperty (const std::string &propertyKey, float &floatValue) const |
| Convenience access method for float properties (instances of FloatProperty) More... | |
| bool | GetDoubleProperty (const std::string &propertyKey, double &doubleValue) const |
| Convenience access method for double properties (instances of DoubleProperty) More... | |
| bool | GetStringProperty (const std::string &propertyKey, std::string &string) const |
| Convenience access method for string properties (instances of StringProperty) More... | |
| void | SetIntProperty (const std::string &propertyKey, int intValue) |
| Convenience method for setting int properties (instances of IntProperty). More... | |
| void | SetBoolProperty (const std::string &propertyKey, bool boolValue) |
| Convenience method for setting bool properties (instances of BoolProperty). More... | |
| void | SetFloatProperty (const std::string &propertyKey, float floatValue) |
| Convenience method for setting float properties (instances of FloatProperty). More... | |
| void | SetDoubleProperty (const std::string &propertyKey, double doubleValue) |
| Convenience method for setting double properties (instances of DoubleProperty). More... | |
| void | SetStringProperty (const std::string &propertyKey, const std::string &string) |
| Convenience method for setting string properties (instances of StringProperty). More... | |
| bool | IsOn (const std::string &propertyKey, bool defaultIsOn=true) const |
| Convenience access method for boolean properties (instances of BoolProperty). Return value is the value of the property. If the property is not found, the value of defaultIsOn is returned. More... | |
| bool | GetName (std::string &nodeName, const std::string &propertyKey="name") const |
| Convenience access method for accessing the name of an object (instance of StringProperty with property-key "name") More... | |
| virtual std::string | GetName () const |
| Extra convenience access method for accessing the name of an object (instance of StringProperty with property-key "name"). More... | |
| virtual void | SetName (const std::string &name) |
| Extra convenience access method to set the name of an object. More... | |
| bool | GetColor (float rgb[], const std::string &propertyKey="color") const |
| Convenience access method for color properties (instances of ColorProperty) More... | |
| void | SetColor (const mitk::Color &color, const std::string &propertyKey="color") |
| Convenience method for setting color properties (instances of ColorProperty) More... | |
| void | SetColor (float red, float green, float blue, const std::string &propertyKey="color") |
| Convenience method for setting color properties (instances of ColorProperty) More... | |
| void | SetColor (const float rgb[], const std::string &propertyKey="color") |
| Convenience method for setting color properties (instances of ColorProperty) More... | |
| bool | GetOpacity (float &opacity, const std::string &propertyKey="opacity") const |
| Convenience access method for opacity properties (instances of FloatProperty) More... | |
| void | SetOpacity (float opacity, const std::string &propertyKey="opacity") |
| Convenience method for setting opacity properties (instances of FloatProperty) More... | |
| void | SetText (std::string text) |
| std::string | GetText () const |
| void | SetFontSize (int fontSize) |
| int | GetFontSize () const |
| bool | GetVisibility (bool &visible, const std::string &propertyKey="visible") const |
| Convenience access method for visibility properties (instances of BoolProperty with property-key "visible") More... | |
| bool | IsVisible (const std::string &propertyKey="visible", bool defaultIsOn=true) const |
| Convenience access method for visibility properties (instances of BoolProperty). Return value is the visibility. Default is visible==true, i.e., true is returned even if the property (propertyKey) is not found. More... | |
| void | SetVisibility (bool visible, const std::string &propertyKey="visible") |
| Convenience method for setting visibility properties (instances of BoolProperty) More... | |
| virtual void | AddToBaseRenderer (BaseRenderer *renderer)=0 |
| Adds the Annotation to the specified renderer. Update Annotation should be called soon in order to apply all properties. More... | |
| virtual void | AddToRenderer (BaseRenderer *renderer, vtkRenderer *vtkrenderer)=0 |
| Adds the Annotation to the specified renderer. Update Annotation should be called soon in order to apply all properties. More... | |
| virtual void | RemoveFromBaseRenderer (BaseRenderer *renderer)=0 |
| Removes the Annotation from the specified renderer. It is not visible anymore then. More... | |
| virtual void | RemoveFromRenderer (BaseRenderer *renderer, vtkRenderer *vtkrenderer)=0 |
| Removes the Annotation from the specified renderer. It is not visible anymore then. More... | |
| virtual void | Update (BaseRenderer *renderer)=0 |
| Applies all properties and should be called before the rendering procedure. More... | |
| virtual Bounds | GetBoundsOnDisplay (BaseRenderer *renderer) const |
| Returns position and size of the Annotation on the display. More... | |
| virtual void | SetBoundsOnDisplay (BaseRenderer *renderer, const Bounds &) |
| Sets position and size of the Annotation on the display. More... | |
| void | SetForceInForeground (bool forceForeground) |
| bool | IsForceInForeground () const |
| PropertyList * | GetPropertyList () const |
| std::string | GetMicroserviceID () |
| Returns the id that this device is registered with. The id will only be valid, if the Annotation has been registered using RegisterAsMicroservice(). More... | |
| virtual void | RegisterAsMicroservice (us::ServiceProperties props) |
| Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice(). More... | |
| virtual void | UnRegisterMicroservice () |
| Registers this object as a Microservice, making it available to every module and/or plugin. More... | |
| void | AnnotationModified () |
| mitkClassMacroItkParent (Annotation, itk::Object) | |
Static Public Attributes | |
| static const std::string | US_INTERFACE_NAME |
| These Constants are used in conjunction with Microservices. More... | |
| static const std::string | US_PROPKEY_AnnotationNAME |
| static const std::string | US_PROPKEY_ID |
| static const std::string | US_PROPKEY_MODIFIED |
| static const std::string | US_PROPKEY_RENDERER_ID |
| static const std::string | US_PROPKEY_AR_ID |
Protected Member Functions | |
| Annotation () | |
| explicit constructor which disallows implicit conversions More... | |
| ~Annotation () override | |
| virtual destructor in order to derive from this class More... | |
| void | SetUSProperty (const std::string &propertyKey, us::Any value) |
| void | RemoveFromAllRegisteredBaseRenderers (const std::vector< BaseRenderer * > &renderers) noexcept |
| Calls RemoveFromBaseRenderer on every non-null entry, swallowing any exception. More... | |
Protected Attributes | |
| PropertyList::Pointer | m_PropertyList |
| BaseRenderer-independent PropertyList. More... | |
| itk::TimeStamp | m_DataReferenceChangedTime |
| Timestamp of the last change of m_Data. More... | |
Base class for all Annotation objects.
Subclass this to create annotations that are managed by an AbstractAnnotationRenderer. Contains an internal PropertyList for configuring the appearance of the annotation. Properties can be accessed via convenience methods for common types (bool, int, float, double, string, color, opacity, visibility).
Definition at line 38 of file mitkAnnotation.h.
|
protected |
explicit constructor which disallows implicit conversions
|
overrideprotected |
virtual destructor in order to derive from this class
| void mitk::Annotation::AddProperty | ( | const std::string & | propertyKey, |
| const BaseProperty::Pointer & | property, | ||
| bool | overwrite = false |
||
| ) |
Add the property (instance of BaseProperty) if it does not exist (or always if overwrite is true) with key propertyKey in the PropertyList of the renderer (if nullptr, use BaseRenderer-independent PropertyList). This is set-by-value.
For overwrite == false the property is not changed if it already exists. For overwrite == true the method is identical to SetProperty.
|
pure virtual |
Adds the Annotation to the specified renderer. Update Annotation should be called soon in order to apply all properties.
Implemented in mitk::VtkAnnotation.
|
pure virtual |
Adds the Annotation to the specified renderer. Update Annotation should be called soon in order to apply all properties.
Implemented in mitk::VtkAnnotation.
| void mitk::Annotation::AnnotationModified | ( | ) |
| void mitk::Annotation::ConcatenatePropertyList | ( | PropertyList * | pList, |
| bool | replace = false |
||
| ) |
Add values from another PropertyList.
Overwrites values in m_PropertyList only when possible (i.e. when types are compatible). If you want to allow for object type changes (replacing a "visible":BoolProperty with "visible":IntProperty, set replace.
| pList | |
| replace | true: if pList contains a property "visible" of type ColorProperty and our m_PropertyList also has a "visible" property of a different type (e.g. BoolProperty), change the type, i.e. replace the objects behind the pointer. |
| bool mitk::Annotation::GetBoolProperty | ( | const std::string & | propertyKey, |
| bool & | boolValue | ||
| ) | const |
Convenience access method for bool properties (instances of BoolProperty)
|
virtual |
Returns position and size of the Annotation on the display.
Reimplemented in mitk::VtkAnnotation2D, and mitk::TextAnnotation2D.
| bool mitk::Annotation::GetColor | ( | float | rgb[], |
| const std::string & | propertyKey = "color" |
||
| ) | const |
Convenience access method for color properties (instances of ColorProperty)
| bool mitk::Annotation::GetDoubleProperty | ( | const std::string & | propertyKey, |
| double & | doubleValue | ||
| ) | const |
Convenience access method for double properties (instances of DoubleProperty)
| bool mitk::Annotation::GetFloatProperty | ( | const std::string & | propertyKey, |
| float & | floatValue | ||
| ) | const |
Convenience access method for float properties (instances of FloatProperty)
| int mitk::Annotation::GetFontSize | ( | ) | const |
| bool mitk::Annotation::GetIntProperty | ( | const std::string & | propertyKey, |
| int & | intValue | ||
| ) | const |
Convenience access method for int properties (instances of IntProperty)
| std::string mitk::Annotation::GetMicroserviceID | ( | ) |
Returns the id that this device is registered with. The id will only be valid, if the Annotation has been registered using RegisterAsMicroservice().
|
virtual |
Extra convenience access method for accessing the name of an object (instance of StringProperty with property-key "name").
This method does not take the renderer specific propertylists into account, because the name of an object should never be renderer specific.
| bool mitk::Annotation::GetName | ( | std::string & | nodeName, |
| const std::string & | propertyKey = "name" |
||
| ) | const |
Convenience access method for accessing the name of an object (instance of StringProperty with property-key "name")
| bool mitk::Annotation::GetOpacity | ( | float & | opacity, |
| const std::string & | propertyKey = "opacity" |
||
| ) | const |
Convenience access method for opacity properties (instances of FloatProperty)
| mitk::BaseProperty* mitk::Annotation::GetProperty | ( | const std::string & | propertyKey | ) | const |
Get the property (instance of BaseProperty) with key propertyKey from the PropertyList of the renderer, if available there, otherwise use the BaseRenderer-independent PropertyList.
If renderer is nullptr or the propertyKey cannot be found in the PropertyList specific to renderer or is disabled there, the BaseRenderer-independent PropertyList of this Annotation is queried.
|
inline |
Get the property of type T with key propertyKey from the PropertyList of the renderer, if available there, otherwise use the BaseRenderer-independent PropertyList.
If renderer is nullptr or the propertyKey cannot be found in the PropertyList specific to renderer or is disabled there, the BaseRenderer-independent PropertyList of this Annotation is queried.
Definition at line 148 of file mitkAnnotation.h.
|
inline |
Get the property of type T with key propertyKey from the PropertyList of the renderer, if available there, otherwise use the BaseRenderer-independent PropertyList.
If renderer is nullptr or the propertyKey cannot be found in the PropertyList specific to renderer or is disabled there, the BaseRenderer-independent PropertyList of this Annotation is queried.
Definition at line 166 of file mitkAnnotation.h.
| PropertyList* mitk::Annotation::GetPropertyList | ( | ) | const |
|
inline |
Convenience access method for GenericProperty<T> properties (T being the type of the second parameter)
Definition at line 178 of file mitkAnnotation.h.
References mitk::GenericProperty< T >::GetValue().
| bool mitk::Annotation::GetStringProperty | ( | const std::string & | propertyKey, |
| std::string & | string | ||
| ) | const |
Convenience access method for string properties (instances of StringProperty)
| std::string mitk::Annotation::GetText | ( | ) | const |
| bool mitk::Annotation::GetVisibility | ( | bool & | visible, |
| const std::string & | propertyKey = "visible" |
||
| ) | const |
Convenience access method for visibility properties (instances of BoolProperty with property-key "visible")
| bool mitk::Annotation::IsForceInForeground | ( | ) | const |
|
inline |
Convenience access method for boolean properties (instances of BoolProperty). Return value is the value of the property. If the property is not found, the value of defaultIsOn is returned.
Thus, the return value has a different meaning than in the GetBoolProperty method!
Definition at line 258 of file mitkAnnotation.h.
| bool mitk::Annotation::IsVisible | ( | const std::string & | propertyKey = "visible", |
| bool | defaultIsOn = true |
||
| ) | const |
Convenience access method for visibility properties (instances of BoolProperty). Return value is the visibility. Default is visible==true, i.e., true is returned even if the property (propertyKey) is not found.
Thus, the return value has a different meaning than in the GetVisibility method!
| mitk::Annotation::mitkClassMacroItkParent | ( | Annotation | , |
| itk::Object | |||
| ) |
|
virtual |
Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice().
|
protectednoexcept |
Calls RemoveFromBaseRenderer on every non-null entry, swallowing any exception.
Helper for derived destructors. Each derived class owns its own LocalStorageHandler (templated on a class-specific LocalStorage), so the list of registered renderers cannot be reached from ~Annotation(); derived destructors must hand it in. The destructor is implicitly noexcept, and at process-exit teardown the rendering stack can throw (e.g. from the microservice framework), which would otherwise reach std::terminate.
|
pure virtual |
Removes the Annotation from the specified renderer. It is not visible anymore then.
Implemented in mitk::VtkAnnotation.
|
pure virtual |
Removes the Annotation from the specified renderer. It is not visible anymore then.
Implemented in mitk::VtkAnnotation.
| void mitk::Annotation::ReplaceProperty | ( | const std::string & | propertyKey, |
| const BaseProperty::Pointer & | property | ||
| ) |
Replace the property (instance of BaseProperty) with key propertyKey in the PropertyList of the renderer (if nullptr, use BaseRenderer-independent PropertyList). This is set-by-reference.
If renderer is nullptr the property is set in the BaseRenderer-independent PropertyList of this Annotation.
| void mitk::Annotation::SetBoolProperty | ( | const std::string & | propertyKey, |
| bool | boolValue | ||
| ) |
Convenience method for setting bool properties (instances of BoolProperty).
|
virtual |
Sets position and size of the Annotation on the display.
Reimplemented in mitk::VtkAnnotation2D, and mitk::TextAnnotation2D.
| void mitk::Annotation::SetColor | ( | const float | rgb[], |
| const std::string & | propertyKey = "color" |
||
| ) |
Convenience method for setting color properties (instances of ColorProperty)
| void mitk::Annotation::SetColor | ( | const mitk::Color & | color, |
| const std::string & | propertyKey = "color" |
||
| ) |
Convenience method for setting color properties (instances of ColorProperty)
| void mitk::Annotation::SetColor | ( | float | red, |
| float | green, | ||
| float | blue, | ||
| const std::string & | propertyKey = "color" |
||
| ) |
Convenience method for setting color properties (instances of ColorProperty)
| void mitk::Annotation::SetDoubleProperty | ( | const std::string & | propertyKey, |
| double | doubleValue | ||
| ) |
Convenience method for setting double properties (instances of DoubleProperty).
| void mitk::Annotation::SetFloatProperty | ( | const std::string & | propertyKey, |
| float | floatValue | ||
| ) |
Convenience method for setting float properties (instances of FloatProperty).
| void mitk::Annotation::SetFontSize | ( | int | fontSize | ) |
| void mitk::Annotation::SetForceInForeground | ( | bool | forceForeground | ) |
| void mitk::Annotation::SetIntProperty | ( | const std::string & | propertyKey, |
| int | intValue | ||
| ) |
Convenience method for setting int properties (instances of IntProperty).
|
virtual |
Extra convenience access method to set the name of an object.
The name will be stored in the non-renderer-specific PropertyList in a StringProperty named "name".
| void mitk::Annotation::SetOpacity | ( | float | opacity, |
| const std::string & | propertyKey = "opacity" |
||
| ) |
Convenience method for setting opacity properties (instances of FloatProperty)
| void mitk::Annotation::SetProperty | ( | const std::string & | propertyKey, |
| const BaseProperty::Pointer & | property | ||
| ) |
Set the property (instance of BaseProperty) with key propertyKey in the PropertyList of the renderer (if nullptr, use BaseRenderer-independent PropertyList). This is set-by-value.
SetProperty( "key", new SomeProperty("value") ).| void mitk::Annotation::SetStringProperty | ( | const std::string & | propertyKey, |
| const std::string & | string | ||
| ) |
Convenience method for setting string properties (instances of StringProperty).
| void mitk::Annotation::SetText | ( | std::string | text | ) |
|
protected |
| void mitk::Annotation::SetVisibility | ( | bool | visible, |
| const std::string & | propertyKey = "visible" |
||
| ) |
Convenience method for setting visibility properties (instances of BoolProperty)
| visible | If set to true, the data will be rendered. If false, the render will skip this data. |
| propertyKey | Can be used to specify a user defined name of the visibility property. |
|
virtual |
Registers this object as a Microservice, making it available to every module and/or plugin.
|
pure virtual |
Applies all properties and should be called before the rendering procedure.
Implemented in mitk::VtkAnnotation.
|
protected |
Timestamp of the last change of m_Data.
Definition at line 439 of file mitkAnnotation.h.
|
protected |
BaseRenderer-independent PropertyList.
Properties herein can be overwritten specifically for each BaseRenderer by the BaseRenderer-specific properties defined in m_MapOfPropertyLists.
Definition at line 434 of file mitkAnnotation.h.
|
static |
These Constants are used in conjunction with Microservices.
Definition at line 399 of file mitkAnnotation.h.
|
static |
Definition at line 400 of file mitkAnnotation.h.
|
static |
Definition at line 404 of file mitkAnnotation.h.
|
static |
Definition at line 401 of file mitkAnnotation.h.
|
static |
Definition at line 402 of file mitkAnnotation.h.
|
static |
Definition at line 403 of file mitkAnnotation.h.