PlusLib
2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
|
Interface class to collect sensor data in a generic wayFor now, the following sensor types are supported: More...
#include <src/PlusDataCollection/GenericSensor/vtkPlusGenericSensorTracker.h>
Public Types | |
typedef vtkPlusDevice | Superclass |
Public Types inherited from vtkPlusDevice | |
typedef vtkImageAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
PlusStatus | InternalConnect () override |
PlusStatus | InternalDisconnect () override |
PlusStatus | InternalStartRecording () override |
PlusStatus | InternalStopRecording () override |
PlusStatus | InternalUpdate () override |
virtual int | IsA (const char *type) |
bool | IsTracker () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
PlusStatus | Probe () override |
PlusStatus | ReadConfiguration (vtkXMLDataElement *config) override |
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 std::string | GetSdkVersion () |
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 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 vtkPlusGenericSensorTracker * | New () |
static vtkPlusGenericSensorTracker * | 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 | |
vtkPlusGenericSensorTracker () | |
~vtkPlusGenericSensorTracker () | |
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 () |
Interface class to collect sensor data in a generic way
For now, the following sensor types are supported:
Definition at line 21 of file vtkPlusGenericSensorTracker.h.
Definition at line 27 of file vtkPlusGenericSensorTracker.h.
|
protected |
Definition at line 689 of file vtkPlusGenericSensorTracker.cxx.
|
protected |
Definition at line 696 of file vtkPlusGenericSensorTracker.cxx.
|
virtual |
Reimplemented from vtkPlusDevice.
|
overridevirtual |
Should be overridden to connect to the hardware
Reimplemented from vtkPlusDevice.
Definition at line 767 of file vtkPlusGenericSensorTracker.cxx.
|
overridevirtual |
Release the video driver. Should be overridden to disconnect from the hardware.
Reimplemented from vtkPlusDevice.
Definition at line 779 of file vtkPlusGenericSensorTracker.cxx.
|
overridevirtual |
Called at the end of StartRecording to allow hardware-specific actions for starting the recording
Reimplemented from vtkPlusDevice.
Definition at line 799 of file vtkPlusGenericSensorTracker.cxx.
|
overridevirtual |
Called at the beginning of StopRecording to allow hardware-specific actions for stopping the recording
Reimplemented from vtkPlusDevice.
Definition at line 814 of file vtkPlusGenericSensorTracker.cxx.
|
overridevirtual |
The subclass will do all the hardware-specific update stuff in this function. It should call ToolUpdate() for each tool. Note that vtkPlusDevice.cxx starts up a separate thread after InternalStartRecording() is called, and that InternalUpdate() is called repeatedly from within that thread. Therefore, any code within InternalUpdate() must be thread safe. You can temporarily pause the thread by locking this->UpdateMutex->Lock() e.g. if you need to communicate with the device from outside of InternalUpdate(). A call to this->UpdateMutex->Unlock() will resume the thread.
Reimplemented from vtkPlusDevice.
Definition at line 821 of file vtkPlusGenericSensorTracker.cxx.
|
virtual |
Reimplemented from vtkPlusDevice.
|
inlinevirtual |
Is this device a tracker
Reimplemented from vtkPlusDevice.
Definition at line 31 of file vtkPlusGenericSensorTracker.h.
|
static |
|
static |
|
overridevirtual |
Reimplemented from vtkPlusDevice.
Definition at line 703 of file vtkPlusGenericSensorTracker.cxx.
|
overridevirtual |
Probe to see to see if the device is connected to the computer. This method should be overridden in subclasses.
Reimplemented from vtkPlusDevice.
Definition at line 786 of file vtkPlusGenericSensorTracker.cxx.
|
overridevirtual |
Read main configuration from xml data
Reimplemented from vtkPlusDevice.
Definition at line 720 of file vtkPlusGenericSensorTracker.cxx.
|
static |