|
MITK-IGT
IGT Extension of MITK
|
Connects a mitk::IGTLDevice to a MITK-OpenIGTLink-Message-Filter-Pipeline. More...
#include <mitkIGTLDeviceSource.h>
Public Member Functions | |
| mitkClassMacro (IGTLDeviceSource, IGTLMessageSource) | |
| itkFactorylessNewMacro (Self) | |
| itkCloneMacro (Self) | |
| virtual void | SetIGTLDevice (mitk::IGTLDevice *td) |
| sets the OpenIGTLink device that will be used as a data source | |
| itkGetObjectMacro (IGTLDevice, mitk::IGTLDevice) | |
| returns the OpenIGTLink device that is used by this filter | |
| void | RegisterAsMicroservice () override |
| Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice(). | |
| void | Connect () |
| Establishes a connection to the OpenIGTLink device. If there is already a connection the method does nothing. | |
| void | Disconnect () |
| Closes the connection to the OpenIGTLink device. | |
| void | StartCommunication () |
| starts the communication of the device. This needs to be called before Update() or GetOutput()->Update(). If the device is already communicating the method does nothing. | |
| void | StopCommunication () |
| stops the communication of the device. | |
| virtual bool | IsConnected () |
| returns true if a connection to the OpenIGTLink device is established | |
| virtual bool | IsCommunicating () |
| returns true if communication is in progress | |
| void | UpdateOutputInformation () override |
| Used for pipeline update. | |
Public Member Functions inherited from mitk::IGTLMessageSource | |
| mitkClassMacroItkParent (IGTLMessageSource, itk::ProcessObject) | |
| itkGetMacro (Name, std::string) | |
| itkSetMacro (Name, std::string) | |
| 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. | |
| itkGetMacro (Type, std::string) | |
| itkSetMacro (Type, std::string) | |
| Sets the 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. | |
| IGTLMessage * | GetOutput (void) |
| return the output (output with id 0) of the filter | |
| IGTLMessage * | GetOutput (DataObjectPointerArraySizeType idx) |
| return the output with id idx of the filter | |
| IGTLMessage * | GetOutput (const std::string &messageName) |
| return the output with name messageName of the filter | |
| DataObjectPointerArraySizeType | GetOutputIndex (std::string messageName) |
| return the index of the output with name messageName, -1 if no output with that name was found | |
| virtual void | UnRegisterMicroservice () |
| Registers this object as a Microservice, making it available to every module and/or plugin. | |
| 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(). | |
| virtual void | GraftNthOutput (unsigned int idx, itk::DataObject *graft) |
| Graft the specified DataObject onto this ProcessObject's output. | |
| virtual void | GraftOutput (itk::DataObject *graft) |
| Graft the specified DataObject onto this ProcessObject's output. | |
| itk::DataObject::Pointer | MakeOutput (DataObjectPointerArraySizeType idx) override |
| itk::DataObject::Pointer | MakeOutput (const DataObjectIdentifierType &name) override |
| virtual void | SetParameters (const mitk::PropertyList *) |
| Set all filter parameters as the PropertyList p. | |
| virtual mitk::PropertyList::ConstPointer | GetParameters () const |
| Get all filter parameters as a PropertyList. | |
| void | SetFPS (unsigned int fps) |
| Sets the fps used for streaming this source. | |
| unsigned int | GetFPS () |
| Gets the fps used for streaming this source. | |
Static Public Attributes | |
| static const std::string | US_PROPKEY_IGTLDEVICENAME |
| These Constants are used in conjunction with Microservices. | |
Static Public Attributes inherited from mitk::IGTLMessageSource | |
| static const std::string | US_INTERFACE_NAME |
| These Constants are used in conjunction with Microservices. | |
| 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 | |
| IGTLDeviceSource () | |
| ~IGTLDeviceSource () override | |
| void | GenerateData () override |
| filter execute method | |
| void | CreateOutputs () |
| Create the necessary outputs for the m_IGTLDevice. | |
| virtual void | OnIncomingMessage () |
| This method is called when the IGTL device hold by this class receives a new message. | |
| virtual void | OnIncomingCommand () |
| This method is called when the IGTL device hold by this class receives a new command. | |
| virtual void | OnLostConnection () |
| This method is called when the IGTL device lost the connection to the other side. | |
| virtual void | RemoveObservers () |
| Removes all observers that listen to the igtl device. | |
| virtual void | SetInput (unsigned int idx, const IGTLMessage *msg) |
| Set input with id idx of this filter. | |
| const IGTLMessage * | GetInput (void) const |
| Get the input of this filter. | |
| const IGTLMessage * | GetInput (unsigned int idx) const |
| Get the input with id idx of this filter. | |
| const IGTLMessage * | GetInput (std::string msgName) const |
| Get the input with name messageName of this filter. | |
| DataObjectPointerArraySizeType | GetInputIndex (std::string msgName) |
| return the index of the input with name msgName, throw std::invalid_argument exception if that name was not found | |
| DataObjectPointerArraySizeType | GetOutputIndex (std::string msgName) |
| return the index of the output with name msgName, -1 if no output with that name was found | |
Protected Member Functions inherited from mitk::IGTLMessageSource | |
| IGTLMessageSource () | |
| ~IGTLMessageSource () override | |
Protected Attributes | |
| mitk::IGTLDevice::Pointer | m_IGTLDevice |
| unsigned int | m_LostConnectionObserverTag |
| unsigned int | m_IncomingCommandObserverTag |
| unsigned int | m_IncomingMessageObserverTag |
Protected Attributes inherited from mitk::IGTLMessageSource | |
| std::string | m_Name |
| std::string | m_Type |
| std::mutex | m_StreamingFPSMutex |
| unsigned int | m_StreamingFPS |
| us::ServiceRegistration< Self > | m_ServiceRegistration |
Connects a mitk::IGTLDevice to a MITK-OpenIGTLink-Message-Filter-Pipeline.
This class is the source of most OpenIGTLink pipelines. It encapsulates a mitk::IGTLDevice and provides the information/messages of the connected OpenIGTLink devices as igtl::MessageBase objects. Note, that there is just one single output.
Definition at line 30 of file mitkIGTLDeviceSource.h.
|
protected |
Definition at line 32 of file mitkIGTLDeviceSource.cpp.
|
overrideprotected |
Definition at line 38 of file mitkIGTLDeviceSource.cpp.
| void mitk::IGTLDeviceSource::Connect | ( | ) |
Establishes a connection to the OpenIGTLink device. If there is already a connection the method does nothing.
Definition at line 148 of file mitkIGTLDeviceSource.cpp.
|
protected |
Create the necessary outputs for the m_IGTLDevice.
This Method is called internally whenever outputs need to be reset. Old Outputs are deleted when called.
Definition at line 125 of file mitkIGTLDeviceSource.cpp.
| void mitk::IGTLDeviceSource::Disconnect | ( | ) |
Closes the connection to the OpenIGTLink device.
Definition at line 182 of file mitkIGTLDeviceSource.cpp.
|
overrideprotected |
filter execute method
queries the OpenIGTLink device for new messages and updates its output igtl::MessageBase objects with it.
Definition at line 55 of file mitkIGTLDeviceSource.cpp.
|
protected |
Get the input with name messageName of this filter.
Definition at line 287 of file mitkIGTLDeviceSource.cpp.
|
protected |
Get the input with id idx of this filter.
Definition at line 278 of file mitkIGTLDeviceSource.cpp.
|
protected |
Get the input of this filter.
Definition at line 269 of file mitkIGTLDeviceSource.cpp.
|
protected |
return the index of the input with name msgName, throw std::invalid_argument exception if that name was not found
Definition at line 299 of file mitkIGTLDeviceSource.cpp.
|
protected |
return the index of the output with name msgName, -1 if no output with that name was found
|
virtual |
returns true if communication is in progress
Definition at line 231 of file mitkIGTLDeviceSource.cpp.
|
virtual |
returns true if a connection to the OpenIGTLink device is established
Definition at line 222 of file mitkIGTLDeviceSource.cpp.
| mitk::IGTLDeviceSource::itkCloneMacro | ( | Self | ) |
| mitk::IGTLDeviceSource::itkFactorylessNewMacro | ( | Self | ) |
| mitk::IGTLDeviceSource::itkGetObjectMacro | ( | IGTLDevice | , |
| mitk::IGTLDevice | ) |
returns the OpenIGTLink device that is used by this filter
| mitk::IGTLDeviceSource::mitkClassMacro | ( | IGTLDeviceSource | , |
| IGTLMessageSource | ) |
|
protectedvirtual |
This method is called when the IGTL device hold by this class receives a new command.
Reimplemented in mitk::IGTLMessageProvider.
Definition at line 261 of file mitkIGTLDeviceSource.cpp.
|
protectedvirtual |
This method is called when the IGTL device hold by this class receives a new message.
Reimplemented in mitk::IGTLMessageProvider.
Definition at line 257 of file mitkIGTLDeviceSource.cpp.
|
protectedvirtual |
This method is called when the IGTL device lost the connection to the other side.
Reimplemented in mitk::IGTLMessageProvider.
Definition at line 265 of file mitkIGTLDeviceSource.cpp.
|
overridevirtual |
Registers this object as a Microservice, making it available to every module and/or plugin. To unregister, call UnregisterMicroservice().
Reimplemented from mitk::IGTLMessageSource.
Definition at line 239 of file mitkIGTLDeviceSource.cpp.
|
protectedvirtual |
Removes all observers that listen to the igtl device.
Definition at line 77 of file mitkIGTLDeviceSource.cpp.
|
virtual |
sets the OpenIGTLink device that will be used as a data source
Definition at line 87 of file mitkIGTLDeviceSource.cpp.
|
protectedvirtual |
Set input with id idx of this filter.
Definition at line 208 of file mitkIGTLDeviceSource.cpp.
| void mitk::IGTLDeviceSource::StartCommunication | ( | ) |
starts the communication of the device. This needs to be called before Update() or GetOutput()->Update(). If the device is already communicating the method does nothing.
Definition at line 170 of file mitkIGTLDeviceSource.cpp.
| void mitk::IGTLDeviceSource::StopCommunication | ( | ) |
stops the communication of the device.
Definition at line 192 of file mitkIGTLDeviceSource.cpp.
|
override |
Used for pipeline update.
Definition at line 202 of file mitkIGTLDeviceSource.cpp.
|
protected |
the OpenIGTLink device that is used as a source for this filter object
Definition at line 197 of file mitkIGTLDeviceSource.h.
|
protected |
Definition at line 201 of file mitkIGTLDeviceSource.h.
|
protected |
Definition at line 202 of file mitkIGTLDeviceSource.h.
|
protected |
observer tags
Definition at line 200 of file mitkIGTLDeviceSource.h.
|
static |
These Constants are used in conjunction with Microservices.
Definition at line 40 of file mitkIGTLDeviceSource.h.