PlusLib
2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
|
Interface for the NDI Optotrak Certus tracking device. More...
#include <src/PlusDataCollection/NDICertusTracking/vtkPlusNDICertusTracker.h>
Public Types | |
enum | LedState { TR_LED_OFF = 0, TR_LED_ON = 1, TR_LED_FLASH = 2 } |
typedef vtkPlusDevice | Superclass |
Public Types inherited from vtkPlusDevice | |
typedef vtkImageAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual std::string | GetSdkVersion () |
virtual char * | GetVersion () |
virtual PlusStatus | InternalConnect () |
virtual PlusStatus | InternalDisconnect () |
PlusStatus | InternalUpdate () |
virtual int | IsA (const char *type) |
virtual bool | IsTracker () const |
virtual void | PrintSelf (ostream &os, vtkIndent indent) VTK_OVERRIDE |
PlusStatus | Probe () |
PlusStatus | SetToolLED (int portNumber, int led, LedState state) |
Public Member Functions inherited from vtkPlusDevice | |
PlusStatus | AddFieldDataSource (vtkPlusDataSource *aSource) |
PlusStatus | AddInputChannel (vtkPlusChannel *aChannel) |
PlusStatus | AddOutputChannel (vtkPlusChannel *aChannel) |
PlusStatus | AddTool (vtkPlusDataSource *tool, bool requireUniquePortName=true) |
PlusStatus | AddVideoSource (vtkPlusDataSource *anImage) |
void | ClearAllBuffers () |
virtual PlusStatus | Connect () |
virtual PlusStatus | CreateDefaultOutputChannel (const char *channelId=NULL, bool addSource=true) |
void | DeepCopy (const vtkPlusDevice &device) |
virtual PlusStatus | Disconnect () |
virtual PlusStatus | ForceUpdate () |
virtual double | GetAcquisitionRate () const |
virtual PlusStatus | GetBufferSize (vtkPlusChannel &aChannel, int &outVal, const std::string &aSourceId=std::string("")) |
virtual int | GetConnected () const |
virtual bool | GetCorrectlyConfigured () const |
PlusStatus | GetDataSource (const char *aSourceId, vtkPlusDataSource *&aSource) |
PlusStatus | GetDataSource (const std::string &aSourceId, vtkPlusDataSource *&aSource) |
virtual double | GetDesiredTimestamp () |
virtual std::string | GetDeviceId () const |
PlusStatus | GetFieldDataSource (const char *aSourceId, vtkPlusDataSource *&aSource) const |
PlusStatus | GetFieldDataSource (const std::string &aSourceId, vtkPlusDataSource *&aSource) const |
DataSourceContainerConstIterator | GetFieldDataSourcessIteratorBegin () const |
DataSourceContainerConstIterator | GetFieldDataSourcessIteratorEnd () const |
PlusStatus | GetFirstActiveOutputVideoSource (vtkPlusDataSource *&aVideoSource) |
PlusStatus | GetFirstActiveTool (vtkPlusDataSource *&aTool) const |
PlusStatus | GetFirstOutputChannel (vtkPlusChannel *&aChannel) |
PlusStatus | GetFirstVideoSource (vtkPlusDataSource *&anImage) |
virtual unsigned long | GetFrameNumber () const |
virtual double | GetFrameTimeStamp () const |
virtual PlusStatus | GetImage (const std::string &requestedImageId, std::string &assignedImageId, const std::string &imageReferencFrameName, vtkImageData *imageData, vtkMatrix4x4 *ijkToReferenceTransform) |
virtual PlusStatus | GetImageMetaData (igsioCommon::ImageMetaDataList &imageMetaDataItems) |
virtual US_IMAGE_TYPE | GetImageType (vtkPlusChannel &aChannel) |
PlusStatus | GetInputDevices (std::vector< vtkPlusDevice * > &outDeviceList) const |
PlusStatus | GetInputDevicesRecursive (std::vector< vtkPlusDevice * > &outDeviceList) const |
virtual PlusStatus | GetInputFrameSize (vtkPlusChannel &aChannel, unsigned int &x, unsigned int &y, unsigned int &z) const |
virtual PlusStatus | GetInputFrameSize (vtkPlusChannel &aChannel, FrameSizeType &dim) const |
double | GetInternalUpdateRate () const |
virtual double | GetLocalTimeOffsetSec () const |
double | GetMissingInputGracePeriodSec () const |
virtual int | GetNumberOfFieldDataSources () const |
virtual int | GetNumberOfTools () const |
virtual int | GetNumberOfVideoSources () const |
PlusStatus | GetOutputChannelByName (vtkPlusChannel *&aChannel, const char *aChannelId) |
PlusStatus | GetOutputChannelByName (vtkPlusChannel *&aChannel, const std::string &aChannelId) |
ChannelContainerConstIterator | GetOutputChannelsEnd () const |
ChannelContainerIterator | GetOutputChannelsEnd () |
ChannelContainerConstIterator | GetOutputChannelsStart () const |
ChannelContainerIterator | GetOutputChannelsStart () |
virtual PlusStatus | GetOutputFrameSize (vtkPlusChannel &aChannel, unsigned int &x, unsigned int &y, unsigned int &z) const |
virtual PlusStatus | GetOutputFrameSize (vtkPlusChannel &aChannel, FrameSizeType &dim) const |
virtual std::string | GetParameter (const std::string &key) const |
virtual PlusStatus | GetParameter (const std::string &key, std::string &outValue) const |
virtual igsioCommon::VTKScalarPixelType | GetPixelType (vtkPlusChannel &aChannel) |
virtual double | GetStartTime () |
virtual double | GetTimestampClosestToDesired () |
PlusStatus | GetTool (const char *aToolSourceId, vtkPlusDataSource *&aTool) const |
PlusStatus | GetTool (const std::string &aToolSourceId, vtkPlusDataSource *&aTool) const |
PlusStatus | GetToolByPortName (const char *aPortName, vtkPlusDataSource *&aSource) |
PlusStatus | GetToolByPortName (const std::string &aPortName, vtkPlusDataSource *&aSource) |
DataSourceContainerConstIterator | GetToolIteratorBegin () const |
DataSourceContainerConstIterator | GetToolIteratorEnd () const |
std::string | GetToolReferenceFrameName () const |
virtual int | GetUpdateWithDesiredTimestamp () |
PlusStatus | GetVideoSource (const char *aSourceId, vtkPlusDataSource *&aVideoSource) |
PlusStatus | GetVideoSourceByIndex (const unsigned int index, vtkPlusDataSource *&aVideoSource) |
DataSourceContainerConstIterator | GetVideoSourceIteratorBegin () const |
DataSourceContainerConstIterator | GetVideoSourceIteratorEnd () const |
std::vector< vtkPlusDataSource * > | GetVideoSources () const |
PlusStatus | GetVideoSourcesByPortName (const char *aPortName, std::vector< vtkPlusDataSource * > &sources) |
PlusStatus | GetVideoSourcesByPortName (const std::string &aPortName, std::vector< vtkPlusDataSource * > &sources) |
virtual bool | IsConnected () const |
virtual bool | IsRecording () const |
virtual bool | IsResettable () |
virtual bool | IsVirtual () const |
virtual PlusStatus | NotifyConfigured () |
virtual int | OutputChannelCount () const |
virtual PlusStatus | ReadConfiguration (vtkXMLDataElement *) |
virtual int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual PlusStatus | Reset () |
virtual PlusStatus | SendText (const std::string &textToSend, std::string *textReceived=NULL) |
PlusStatus | SetAcquisitionRate (double aRate) |
virtual PlusStatus | SetBufferSize (vtkPlusChannel &aChannel, int FrameBufferSize, const std::string &aSourceId=std::string("")) |
virtual void | SetDataCollector (vtkPlusDataCollector *_arg) |
virtual void | SetDesiredTimestamp (double) |
void | SetDeviceId (const std::string &id) |
void | SetFieldDataSourcesBufferSize (int aBufferSize) |
virtual PlusStatus | SetImageType (vtkPlusChannel &aChannel, US_IMAGE_TYPE imageType) |
virtual PlusStatus | SetInputFrameSize (vtkPlusDataSource &aSource, unsigned int x, unsigned int y, unsigned int z) |
virtual void | SetLocalTimeOffsetSec (double aTimeOffsetSec) |
virtual void | SetMissingInputGracePeriodSec (double) |
virtual PlusStatus | SetParameter (const std::string &key, const std::string &value) |
virtual PlusStatus | SetPixelType (vtkPlusChannel &aChannel, igsioCommon::VTKScalarPixelType pixelType) |
virtual void | SetStartTime (double startTime) |
void | SetToolReferenceFrameName (const std::string &frameName) |
void | SetToolsBufferSize (int aBufferSize) |
virtual void | SetUpdateWithDesiredTimestamp (int) |
virtual PlusStatus | StartRecording () |
virtual PlusStatus | StopRecording () |
virtual void | UpdateWithDesiredTimestampOff () |
virtual void | UpdateWithDesiredTimestampOn () |
virtual PlusStatus | WriteConfiguration (vtkXMLDataElement *) |
virtual PlusStatus | WriteToolsToSequenceFile (const std::string &filename, bool useCompression=false) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkPlusNDICertusTracker * | New () |
static vtkPlusNDICertusTracker * | SafeDownCast (vtkObject *o) |
Static Public Member Functions inherited from vtkPlusDevice | |
static PlusStatus | GetToolReferenceFrameFromTrackedFrame (igsioTrackedFrame &aFrame, std::string &aToolReferenceFrameName) |
static int | IsTypeOf (const char *type) |
static vtkPlusDevice * | New () |
static vtkPlusDevice * | SafeDownCast (vtkObject *o) |
Protected Member Functions | |
PlusStatus | ActivateCertusMarkers () |
PlusStatus | DeActivateCertusMarkers () |
PlusStatus | DisableToolPorts () |
PlusStatus | EnableToolPorts () |
int | GetToolFromHandle (int handle) |
PlusStatus | InitializeCertusSystem () |
PlusStatus | InternalStartRecording () |
PlusStatus | InternalStopRecording () |
virtual void | SetVersion (const char *) |
PlusStatus | ShutdownCertusSystem () |
vtkPlusNDICertusTracker () | |
~vtkPlusNDICertusTracker () | |
Protected Member Functions inherited from vtkPlusDevice | |
virtual PlusStatus | AddVideoItemToVideoSources (const std::vector< vtkPlusDataSource * > &videoSources, const igsioVideoFrame &frame, long frameNumber, double unfilteredTimestamp=UNDEFINED_TIMESTAMP, double filteredTimestamp=UNDEFINED_TIMESTAMP, const igsioFieldMapType *customFields=NULL) |
virtual PlusStatus | AddVideoItemToVideoSources (const std::vector< vtkPlusDataSource * > &videoSources, void *imageDataPtr, US_IMAGE_ORIENTATION usImageOrientation, const FrameSizeType &frameSizeInPx, igsioCommon::VTKScalarPixelType pixelType, unsigned int numberOfScalarComponents, US_IMAGE_TYPE imageType, int numberOfBytesToSkip, long frameNumber, double unfilteredTimestamp=UNDEFINED_TIMESTAMP, double filteredTimestamp=UNDEFINED_TIMESTAMP, const igsioFieldMapType *customFields=NULL) |
PlusStatus | EnsureUniqueDataSourceId (const std::string &aSourceId) |
vtkXMLDataElement * | FindInputChannelElement (vtkXMLDataElement *rootXMLElement, const char *aChannelId) |
vtkXMLDataElement * | FindOutputChannelElement (vtkXMLDataElement *rootXMLElement, const char *aChannelId) |
vtkXMLDataElement * | FindThisDeviceElement (vtkXMLDataElement *rootXMLElement) |
virtual vtkPlusDataCollector * | GetDataCollector () |
double | GetRecordingStartTime () const |
bool | GetStartThreadForInternalUpdates () const |
bool | HasGracePeriodExpired () |
virtual void | InternalWriteInputChannels (vtkXMLDataElement *rootXMLElement) |
virtual void | InternalWriteOutputChannels (vtkXMLDataElement *rootXMLElement) |
virtual void | SetCorrectlyConfigured (bool) |
virtual void | SetRecordingStartTime (double) |
virtual void | SetStartThreadForInternalUpdates (bool) |
virtual PlusStatus | ToolTimeStampedUpdate (const std::string &aToolSourceId, vtkMatrix4x4 *matrix, ToolStatus status, unsigned long frameNumber, double unfilteredtimestamp, const igsioFieldMapType *customFields=NULL) |
virtual PlusStatus | ToolTimeStampedUpdateWithoutFiltering (const std::string &aToolSourceId, vtkMatrix4x4 *matrix, ToolStatus status, double unfilteredtimestamp, double filteredtimestamp, const igsioFieldMapType *customFields=NULL) |
vtkPlusDevice () | |
virtual | ~vtkPlusDevice () |
Additional Inherited Members | |
Public Attributes inherited from vtkPlusDevice | |
double | InternalUpdateRate |
vtkIGSIORecursiveCriticalSection * | UpdateMutex |
vtkTimeStamp | UpdateTime |
Static Public Attributes inherited from vtkPlusDevice | |
static const std::string | BMODE_PORT_NAME = "B" |
static const std::string | PARAMETER_XML_ELEMENT_TAG = "Parameter" |
static const std::string | PARAMETERS_XML_ELEMENT_TAG = "Parameters" |
static const std::string | RFMODE_PORT_NAME = "Rf" |
Static Protected Member Functions inherited from vtkPlusDevice | |
static void * | vtkDataCaptureThread (vtkMultiThreader::ThreadInfo *data) |
Static Protected Attributes inherited from vtkPlusDevice | |
static const int | VIRTUAL_DEVICE_FRAME_RATE = 50 |
Interface for the NDI Optotrak Certus tracking device.
The vtkPlusNDICertusTracker class provides an interface to the Optotrak Certus (Northern Digital Inc., Waterloo, Canada)
Definition at line 27 of file vtkPlusNDICertusTracker.h.
Definition at line 39 of file vtkPlusNDICertusTracker.h.
Enumerator | |
---|---|
TR_LED_OFF | |
TR_LED_ON | |
TR_LED_FLASH |
Definition at line 31 of file vtkPlusNDICertusTracker.h.
|
protected |
Definition at line 44 of file vtkPlusNDICertusTracker.cxx.
|
protected |
Definition at line 65 of file vtkPlusNDICertusTracker.cxx.
|
protected |
Activate the markers for tracking.
Definition at line 225 of file vtkPlusNDICertusTracker.cxx.
|
protected |
Deactivate all markers.
Definition at line 255 of file vtkPlusNDICertusTracker.cxx.
|
protected |
Definition at line 734 of file vtkPlusNDICertusTracker.cxx.
|
protected |
Methods for detecting which ports have tools in them, and auto-enabling those tools.
Definition at line 453 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Reimplemented from vtkPlusDevice.
|
virtual |
Hardware device SDK version.
Reimplemented from vtkPlusDevice.
Definition at line 79 of file vtkPlusNDICertusTracker.cxx.
Find the tool for a specific port handle (-1 if not found).
Definition at line 771 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Get the a string (perhaps a long one) describing the type and version of the device.
|
protected |
Initialize communication with the Certus system.
Definition at line 174 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Connect to device
Reimplemented from vtkPlusDevice.
Definition at line 111 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Disconnect from device
Reimplemented from vtkPlusDevice.
Definition at line 163 of file vtkPlusNDICertusTracker.cxx.
|
protectedvirtual |
Start the tracking system. The tracking system is brought from its ground state into full tracking mode. The device will only be reset if communication cannot be established without a reset.
Reimplemented from vtkPlusDevice.
Definition at line 285 of file vtkPlusNDICertusTracker.cxx.
|
protectedvirtual |
Stop the tracking system and bring it back to its ground state: Initialized, not tracking, at 9600 Baud.
Reimplemented from vtkPlusDevice.
Definition at line 314 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Get an update from the tracking system and push the new transforms to the tools.
Reimplemented from vtkPlusDevice.
Definition at line 330 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Reimplemented from vtkPlusDevice.
|
inlinevirtual |
Is this device a tracker
Reimplemented from vtkPlusDevice.
Definition at line 64 of file vtkPlusNDICertusTracker.h.
|
static |
|
static |
|
virtual |
Reimplemented from vtkPlusDevice.
Definition at line 89 of file vtkPlusNDICertusTracker.cxx.
|
virtual |
Probe to check whether there is an attached Certus system that is able to track. After Probe is called, you can call GetVersion() to get information about the attached Certus system.
Reimplemented from vtkPlusDevice.
Definition at line 267 of file vtkPlusNDICertusTracker.cxx.
|
static |
PlusStatus vtkPlusNDICertusTracker::SetToolLED | ( | int | portNumber, |
int | led, | ||
vtkPlusNDICertusTracker::LedState | state | ||
) |
Set the specified tool LED to the specified state.
Definition at line 788 of file vtkPlusNDICertusTracker.cxx.
|
protectedvirtual |
Set the version information.
|
protected |
Terminate communication with the Certus system.
Definition at line 212 of file vtkPlusNDICertusTracker.cxx.
|
protected |
Number of markers
Definition at line 110 of file vtkPlusNDICertusTracker.h.
|
protected |
Number of rigid bodies
Definition at line 113 of file vtkPlusNDICertusTracker.h.
|
protected |
Container used for storing enabled tools
Definition at line 119 of file vtkPlusNDICertusTracker.h.
|
protected |
Container used for storing tool handles
Definition at line 122 of file vtkPlusNDICertusTracker.h.
Container used for storing rigid body maps
Definition at line 125 of file vtkPlusNDICertusTracker.h.
|
protected |
Internal matrix used for storing the actual tool matrix
Definition at line 116 of file vtkPlusNDICertusTracker.h.
|
protected |
Version information
Definition at line 107 of file vtkPlusNDICertusTracker.h.