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

OpenIGTLink message source. More...

#include <mitkIGTLMessageSource.h>

Inheritance diagram for mitk::IGTLMessageSource:
Collaboration diagram for mitk::IGTLMessageSource:

Public Member Functions

 mitkClassMacroItkParent (IGTLMessageSource, itk::ProcessObject)
 
virtual std::string GetName ()
 
virtual void SetName (std::string _arg)
 Sets the human readable name of this source. There is also a default name, but you can use this method if you need to define it on your own. More...
 
virtual std::string GetType ()
 
virtual void SetType (std::string _arg)
 
IGTLMessageGetOutput (void)
 return the output (output with id 0) of the filter More...
 
IGTLMessageGetOutput (DataObjectPointerArraySizeType idx)
 return the output with id idx of the filter More...
 
IGTLMessageGetOutput (const std::string &messageName)
 return the output with name messageName of the filter More...
 
DataObjectPointerArraySizeType GetOutputIndex (std::string messageName)
 return the index of the output with name messageName, -1 if no output with that name was found More...
 
virtual void RegisterAsMicroservice ()
 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...
 
std::string GetMicroserviceID ()
 Returns the id that this device is registered with. The id will only be valid, if the IGTLMessageSource has been registered using RegisterAsMicroservice(). More...
 
virtual void GraftNthOutput (unsigned int idx, itk::DataObject *graft)
 Graft the specified DataObject onto this ProcessObject's output. More...
 
virtual void GraftOutput (itk::DataObject *graft)
 Graft the specified DataObject onto this ProcessObject's output. More...
 
virtual itk::DataObject::Pointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
virtual itk::DataObject::Pointer MakeOutput (const DataObjectIdentifierType &name) override
 
virtual void SetParameters (const mitk::PropertyList *)
 Set all filter parameters as the PropertyList p. More...
 
virtual mitk::PropertyList::ConstPointer GetParameters () const
 Get all filter parameters as a PropertyList. More...
 
void SetFPS (unsigned int fps)
 Sets the fps used for streaming this source. More...
 
unsigned int GetFPS ()
 Gets the fps used for streaming this source. 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_DEVICENAME
 
static const std::string US_PROPKEY_DEVICETYPE
 
static const std::string US_PROPKEY_ID
 
static const std::string US_PROPKEY_ISACTIVE
 

Protected Member Functions

 IGTLMessageSource ()
 
virtual ~IGTLMessageSource ()
 

Protected Attributes

std::string m_Name
 
std::string m_Type
 
itk::FastMutexLock::Pointer m_StreamingFPSMutex
 
unsigned int m_StreamingFPS
 
us::ServiceRegistration< Self > m_ServiceRegistration
 

Detailed Description

OpenIGTLink message source.

Base class for all OpenIGTLink filters that produce OpenIGTLink message objects as output. This class defines the output-interface for OpenIGTLinkMessageFilters.

Warning
: if Update() is called on any output object, all IGTLMessage filters will generate new output data for all outputs, not just the one on which Update() was called.

Definition at line 46 of file mitkIGTLMessageSource.h.

Constructor & Destructor Documentation

mitk::IGTLMessageSource::IGTLMessageSource ( )
protected

Definition at line 37 of file mitkIGTLMessageSource.cpp.

References m_StreamingFPSMutex, and mitk::New().

mitk::IGTLMessageSource::~IGTLMessageSource ( )
protectedvirtual

Definition at line 44 of file mitkIGTLMessageSource.cpp.

Member Function Documentation

unsigned int mitk::IGTLMessageSource::GetFPS ( )

Gets the fps used for streaming this source.

Definition at line 193 of file mitkIGTLMessageSource.cpp.

std::string mitk::IGTLMessageSource::GetMicroserviceID ( )

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

Definition at line 127 of file mitkIGTLMessageSource.cpp.

References us::Any::ToString().

virtual std::string mitk::IGTLMessageSource::GetName ( )
virtual
Returns
Returns a human readable name of this source. There will be a default name, or you can set the name with the method SetName() if you want to change it.
mitk::IGTLMessage * mitk::IGTLMessageSource::GetOutput ( void  )
mitk::IGTLMessage * mitk::IGTLMessageSource::GetOutput ( DataObjectPointerArraySizeType  idx)

return the output with id idx of the filter

Definition at line 60 of file mitkIGTLMessageSource.cpp.

mitk::IGTLMessage * mitk::IGTLMessageSource::GetOutput ( const std::string &  messageName)

return the output with name messageName of the filter

Definition at line 73 of file mitkIGTLMessageSource.cpp.

itk::ProcessObject::DataObjectPointerArraySizeType mitk::IGTLMessageSource::GetOutputIndex ( std::string  messageName)

return the index of the output with name messageName, -1 if no output with that name was found

Warning
if a subclass has outputs that have different data type than igtl::MessageBase, they have to overwrite this method

Definition at line 91 of file mitkIGTLMessageSource.cpp.

mitk::PropertyList::ConstPointer mitk::IGTLMessageSource::GetParameters ( ) const
virtual

Get all filter parameters as a PropertyList.

This method allows to get all parameters of a filter with one method call. The returned PropertyList must be assigned to a SmartPointer immediately, or else it will get destroyed. Every filter must overwrite this method to create a filter-specific PropertyList. Note that property names must be unique over all MITK-IGT filters. Therefore each filter should use its name as a prefix for each property name. Secondly, each filter should list the property names and data types in the method documentation.

Definition at line 177 of file mitkIGTLMessageSource.cpp.

References mitk::PropertyList::New().

virtual std::string mitk::IGTLMessageSource::GetType ( )
virtual
Returns
Returns a human readable type of this source. There will be a default type, or you can set the name with the method SetType(). You have to set this parameter otherwise it will not be found by the message provider.
void mitk::IGTLMessageSource::GraftNthOutput ( unsigned int  idx,
itk::DataObject *  graft 
)
virtual

Graft the specified DataObject onto this ProcessObject's output.

See itk::ImageSource::GraftNthOutput for details

Definition at line 139 of file mitkIGTLMessageSource.cpp.

void mitk::IGTLMessageSource::GraftOutput ( itk::DataObject *  graft)
virtual

Graft the specified DataObject onto this ProcessObject's output.

See itk::ImageSource::Graft Output for details

Definition at line 134 of file mitkIGTLMessageSource.cpp.

itk::DataObject::Pointer mitk::IGTLMessageSource::MakeOutput ( DataObjectPointerArraySizeType  idx)
overridevirtual

Allocates a new output object and returns it. Currently the index idx is not evaluated.

Parameters
idxthe index of the output for which an object should be created
Returns
the new object

Definition at line 162 of file mitkIGTLMessageSource.cpp.

References mitk::IGTLMessage::New().

itk::DataObject::Pointer mitk::IGTLMessageSource::MakeOutput ( const DataObjectIdentifierType &  name)
overridevirtual

This is a default implementation to make sure we have something. Once all the subclasses of ProcessObject provide an appopriate MakeOutput(), then ProcessObject::MakeOutput() can be made pure virtual.

Definition at line 167 of file mitkIGTLMessageSource.cpp.

References mitk::IGTLMessage::New().

mitk::IGTLMessageSource::mitkClassMacroItkParent ( IGTLMessageSource  ,
itk::ProcessObject   
)
void mitk::IGTLMessageSource::RegisterAsMicroservice ( )
virtual

Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice().

Reimplemented in mitk::IGTLDeviceSource.

Definition at line 105 of file mitkIGTLMessageSource.cpp.

References us::GetModuleContext(), and mitk::UIDGenerator::GetUID().

void mitk::IGTLMessageSource::SetFPS ( unsigned int  fps)

Sets the fps used for streaming this source.

Definition at line 185 of file mitkIGTLMessageSource.cpp.

virtual void mitk::IGTLMessageSource::SetName ( std::string  _arg)
virtual
virtual void mitk::IGTLMessageSource::SetParameters ( const mitk::PropertyList )
inlinevirtual

Set all filter parameters as the PropertyList p.

This method allows to set all parameters of a filter with one method call. For the names of the parameters, take a look at the GetParameters method of the filter This method has to be overwritten by each MITK-IGT filter.

Definition at line 167 of file mitkIGTLMessageSource.h.

virtual void mitk::IGTLMessageSource::SetType ( std::string  _arg)
virtual
Returns
Returns a human readable type of this source. There will be a default type, or you can set the name with the method SetType(). You have to set this parameter otherwise it will not be found by the message provider.
void mitk::IGTLMessageSource::UnRegisterMicroservice ( )
virtual

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

Definition at line 120 of file mitkIGTLMessageSource.cpp.

Member Data Documentation

std::string mitk::IGTLMessageSource::m_Name
protected

Definition at line 198 of file mitkIGTLMessageSource.h.

us::ServiceRegistration<Self> mitk::IGTLMessageSource::m_ServiceRegistration
protected

Definition at line 207 of file mitkIGTLMessageSource.h.

unsigned int mitk::IGTLMessageSource::m_StreamingFPS
protected

The frames per second used for streaming

Definition at line 205 of file mitkIGTLMessageSource.h.

itk::FastMutexLock::Pointer mitk::IGTLMessageSource::m_StreamingFPSMutex
protected

mutex to control access to m_StreamingFPS

Definition at line 203 of file mitkIGTLMessageSource.h.

Referenced by IGTLMessageSource().

std::string mitk::IGTLMessageSource::m_Type
protected

Definition at line 199 of file mitkIGTLMessageSource.h.

const std::string mitk::IGTLMessageSource::US_INTERFACE_NAME
static

These Constants are used in conjunction with Microservices.

Definition at line 123 of file mitkIGTLMessageSource.h.

Referenced by mitk::IGTLMessageProvider::GetFittingSource().

const std::string mitk::IGTLMessageSource::US_PROPKEY_DEVICENAME
static
const std::string mitk::IGTLMessageSource::US_PROPKEY_DEVICETYPE
static
const std::string mitk::IGTLMessageSource::US_PROPKEY_ID
static

Definition at line 126 of file mitkIGTLMessageSource.h.

const std::string mitk::IGTLMessageSource::US_PROPKEY_ISACTIVE
static

Definition at line 127 of file mitkIGTLMessageSource.h.


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