Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitk::NavigationToolStorage Class Reference

An object of this class represents a collection of navigation tools. You may add/delete navigation tools or store/load the whole collection to/from the harddisc by using the class NavigationToolStorageSerializer and NavigationToolStorageDeserializer. More...

#include <mitkNavigationToolStorage.h>

Inheritance diagram for mitk::NavigationToolStorage:
Collaboration diagram for mitk::NavigationToolStorage:

Public Member Functions

 mitkClassMacroItkParent (NavigationToolStorage, itk::Object)
 
Pointer Clone () const
 
 mitkNewMacro1Param (Self, mitk::DataStorage::Pointer)
 Constructs a NavigationToolStorage with reference to a DataStorage. The Data Nodes of tools are added and removed automatically to this data storage. More...
 
virtual void RegisterAsMicroservice (std::string sourceID)
 Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice(). Make sure to pass the id of the Device that this tool is connected to. More...
 
virtual void UnRegisterMicroservice ()
 Registers this object as a Microservice, making it available to every module and/or plugin. More...
 
std::string GetMicroserviceID ()
 Returns the id that this device is registered with. The id will only be valid, if the NavigationDataSource has been registered using RegisterAsMicroservice(). More...
 
bool AddTool (mitk::NavigationTool::Pointer tool)
 Adds a tool to the storage. Be sure that the tool has a unique identifier which is not already part of this storage. More...
 
mitk::NavigationTool::Pointer GetTool (int number)
 
mitk::NavigationTool::Pointer GetTool (std::string identifier)
 
mitk::NavigationTool::Pointer GetToolByName (std::string name)
 
bool AssignToolNumber (std::string identifier1, int number2)
 
bool DeleteTool (int number)
 Deletes a tool from the collection. Warning, this method operates on the data storage and is not thread save. Calling it from outside the main thread may cause crashes. More...
 
bool DeleteAllTools ()
 Deletes all tools from the collection. Warning, this method operates on the data storage and is not thread save. Calling it from outside the main thread may cause crashes. More...
 
int GetToolCount ()
 
bool isEmpty ()
 
virtual mitk::DataStorage::Pointer GetDataStorage ()
 
void SetName (std::string)
 
virtual std::string GetName () const
 
void LockStorage ()
 
void UnLockStorage ()
 
bool isLocked ()
 
void UpdateMicroservice ()
 

Static Public Member Functions

static Pointer New ()
 Constructs a NavigationToolStorage without reference to a DataStorage. The Data Nodes of tools have to be added and removed to a data storage outside this class. Normaly the other constructor should be used. More...
 

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_SOURCE_ID
 
static const std::string US_PROPKEY_STORAGE_NAME
 

Protected Member Functions

 NavigationToolStorage ()
 
 NavigationToolStorage (mitk::DataStorage::Pointer)
 
 ~NavigationToolStorage ()
 

Protected Attributes

std::vector< mitk::NavigationTool::Pointer > m_ToolCollection
 
mitk::DataStorage::Pointer m_DataStorage
 
std::string m_Name
 
bool m_storageLocked
 

Detailed Description

An object of this class represents a collection of navigation tools. You may add/delete navigation tools or store/load the whole collection to/from the harddisc by using the class NavigationToolStorageSerializer and NavigationToolStorageDeserializer.

Documentation

Definition at line 43 of file mitkNavigationToolStorage.h.

Constructor & Destructor Documentation

mitk::NavigationToolStorage::NavigationToolStorage ( )
protected

Definition at line 28 of file mitkNavigationToolStorage.cpp.

References SetName().

mitk::NavigationToolStorage::NavigationToolStorage ( mitk::DataStorage::Pointer  ds)
protected

Definition at line 36 of file mitkNavigationToolStorage.cpp.

References m_DataStorage, and m_ToolCollection.

mitk::NavigationToolStorage::~NavigationToolStorage ( )
protected

Definition at line 54 of file mitkNavigationToolStorage.cpp.

References m_DataStorage.

Member Function Documentation

bool mitk::NavigationToolStorage::AddTool ( mitk::NavigationTool::Pointer  tool)

Adds a tool to the storage. Be sure that the tool has a unique identifier which is not already part of this storage.

Returns
Returns true if the tool was added to the storage, false if not (false can be returned if the identifier already exists in this storage for example).

Definition at line 123 of file mitkNavigationToolStorage.cpp.

References m_DataStorage, and MITK_WARN.

bool mitk::NavigationToolStorage::AssignToolNumber ( std::string  identifier1,
int  number2 
)

Assigns the given number to the tool with the given identifier. This means the tool is swapped with another tool in the internal tool vector.

Returns
Returns true if the assignment was successfull. Returns false if assignment is not possible, e.g. because the identifier does not exist or if the given number is not available.

Definition at line 189 of file mitkNavigationToolStorage.cpp.

References MITK_DEBUG, and MITK_WARN.

Pointer mitk::NavigationToolStorage::Clone ( ) const
bool mitk::NavigationToolStorage::DeleteAllTools ( )

Deletes all tools from the collection. Warning, this method operates on the data storage and is not thread save. Calling it from outside the main thread may cause crashes.

Definition at line 111 of file mitkNavigationToolStorage.cpp.

References MITK_WARN.

bool mitk::NavigationToolStorage::DeleteTool ( int  number)

Deletes a tool from the collection. Warning, this method operates on the data storage and is not thread save. Calling it from outside the main thread may cause crashes.

Definition at line 90 of file mitkNavigationToolStorage.cpp.

References m_DataStorage, and MITK_WARN.

virtual mitk::DataStorage::Pointer mitk::NavigationToolStorage::GetDataStorage ( )
virtual
Returns
Returns the corresponding data storage if one is set to this NavigationToolStorage. Returns NULL if none is set.
std::string mitk::NavigationToolStorage::GetMicroserviceID ( )

Returns the id that this device is registered with. The id will only be valid, if the NavigationDataSource has been registered using RegisterAsMicroservice().

virtual std::string mitk::NavigationToolStorage::GetName ( ) const
virtual
Returns
Returns the name of this storage.
mitk::NavigationTool::Pointer mitk::NavigationToolStorage::GetTool ( int  number)
Returns
Returns the tracking tool at the position "number" in the storage. Returns NULL if there is no tracking tool at this position.

Definition at line 147 of file mitkNavigationToolStorage.cpp.

mitk::NavigationTool::Pointer mitk::NavigationToolStorage::GetTool ( std::string  identifier)
Returns
Returns the tracking tool with the given identifier. Returns NULL if there is no tracking tool with this identifier in the storage.

Definition at line 152 of file mitkNavigationToolStorage.cpp.

mitk::NavigationTool::Pointer mitk::NavigationToolStorage::GetToolByName ( std::string  name)
Returns
Returns the tracking tool with the given name. Returns NULL if there is no tracking tool with this name in the storage.

Definition at line 158 of file mitkNavigationToolStorage.cpp.

int mitk::NavigationToolStorage::GetToolCount ( )
Returns
Returns the number of tools stored in the storage.

Definition at line 164 of file mitkNavigationToolStorage.cpp.

bool mitk::NavigationToolStorage::isEmpty ( )
Returns
Returns true if the storage is empty, false if not.

Definition at line 169 of file mitkNavigationToolStorage.cpp.

bool mitk::NavigationToolStorage::isLocked ( )
Returns
Returns true if the storage is locked at the moment, false if not.

Definition at line 184 of file mitkNavigationToolStorage.cpp.

void mitk::NavigationToolStorage::LockStorage ( )

Locks the storage. A logged storage may not be modified. If a method tries to modify the storage anyway a waring message is given. The storage is unlocked by default. A Storage might be locked when a tracking device is active and needs the storage to stay consistent.

Definition at line 174 of file mitkNavigationToolStorage.cpp.

mitk::NavigationToolStorage::mitkClassMacroItkParent ( NavigationToolStorage  ,
itk::Object   
)
mitk::NavigationToolStorage::mitkNewMacro1Param ( Self  ,
mitk::DataStorage::Pointer   
)

Constructs a NavigationToolStorage with reference to a DataStorage. The Data Nodes of tools are added and removed automatically to this data storage.

void mitk::NavigationToolStorage::RegisterAsMicroservice ( std::string  sourceID)
virtual

Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice(). Make sure to pass the id of the Device that this tool is connected to.

Definition at line 64 of file mitkNavigationToolStorage.cpp.

References us::GetModuleContext(), and mitkThrow.

void mitk::NavigationToolStorage::SetName ( std::string  n)

Sets the name of this storage. The name should be understandable for the user. Something like "NDI Aurora Tool Storage". If a storage is loaded from the harddisk the name might be the filename.

Definition at line 42 of file mitkNavigationToolStorage.cpp.

Referenced by NavigationToolStorage().

void mitk::NavigationToolStorage::UnLockStorage ( )

Unlocks the storage again.

Definition at line 179 of file mitkNavigationToolStorage.cpp.

void mitk::NavigationToolStorage::UnRegisterMicroservice ( )
virtual

Registers this object as a Microservice, making it available to every module and/or plugin.

Definition at line 77 of file mitkNavigationToolStorage.cpp.

References MITK_WARN.

void mitk::NavigationToolStorage::UpdateMicroservice ( )

Sets the properties which causes the microservice to emit an update signal.

Definition at line 48 of file mitkNavigationToolStorage.cpp.

Member Data Documentation

mitk::DataStorage::Pointer mitk::NavigationToolStorage::m_DataStorage
protected

Definition at line 175 of file mitkNavigationToolStorage.h.

Referenced by NavigationToolStorage().

std::string mitk::NavigationToolStorage::m_Name
protected

Definition at line 176 of file mitkNavigationToolStorage.h.

bool mitk::NavigationToolStorage::m_storageLocked
protected

Definition at line 177 of file mitkNavigationToolStorage.h.

std::vector<mitk::NavigationTool::Pointer> mitk::NavigationToolStorage::m_ToolCollection
protected

Definition at line 174 of file mitkNavigationToolStorage.h.

Referenced by NavigationToolStorage().

const std::string mitk::NavigationToolStorage::US_INTERFACE_NAME
static

These constants are used in conjunction with Microservices.

Definition at line 76 of file mitkNavigationToolStorage.h.

const std::string mitk::NavigationToolStorage::US_PROPKEY_SOURCE_ID
static
const std::string mitk::NavigationToolStorage::US_PROPKEY_STORAGE_NAME
static

The documentation for this class was generated from the following files: