PlusLib
2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
|
Interface for the LeapMotion hand tracker. More...
#include <src/PlusDataCollection/LeapMotion/vtkPlusLeapMotion.h>
Public Types | |
typedef vtkPlusDevice | Superclass |
![]() | |
typedef vtkImageAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual bool | GetInvertImage () |
virtual bool | GetLeapHMDPolicy () |
virtual bool | GetRefusePauseResumePolicy () |
virtual void | InvertImageOff () |
virtual void | InvertImageOn () |
virtual int | IsA (const char *type) |
virtual bool | IsTracker () const |
virtual void | LeapHMDPolicyOff () |
virtual void | LeapHMDPolicyOn () |
void | PrintSelf (ostream &os, vtkIndent indent) |
PlusStatus | Probe () |
virtual PlusStatus | ReadConfiguration (vtkXMLDataElement *config) |
virtual void | RefusePauseResumePolicyOff () |
virtual void | RefusePauseResumePolicyOn () |
virtual void | SetInvertImage (bool) |
virtual void | SetLeapHMDPolicy (bool) |
virtual void | SetRefusePauseResumePolicy (bool) |
virtual PlusStatus | WriteConfiguration (vtkXMLDataElement *config) |
![]() | |
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 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 | WriteToolsToSequenceFile (const std::string &filename, bool useCompression=false) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkPlusLeapMotion * | New () |
static vtkPlusLeapMotion * | SafeDownCast (vtkObject *o) |
![]() | |
static PlusStatus | GetToolReferenceFrameFromTrackedFrame (igsioTrackedFrame &aFrame, std::string &aToolReferenceFrameName) |
static int | IsTypeOf (const char *type) |
static vtkPlusDevice * | New () |
static vtkPlusDevice * | SafeDownCast (vtkObject *o) |
Protected Types | |
enum | Bone { Bone_Metacarpal, Bone_Proximal, Bone_Intermediate, Bone_Distal } |
enum | Finger { Finger_Thumb, Finger_Index, Finger_Middle, Finger_Ring, Finger_Pinky } |
Protected Member Functions | |
std::string | EventToString (_eLeapEventType) |
LEAP_TRACKING_EVENT * | GetFrame () |
LEAP_HEAD_POSE_EVENT * | GetHeadPose () |
virtual PlusStatus | InternalConnect () |
virtual PlusStatus | InternalDisconnect () |
virtual PlusStatus | InternalStartRecording () |
virtual PlusStatus | InternalStopRecording () |
virtual PlusStatus | InternalUpdate () |
virtual PlusStatus | NotifyConfigured () |
PlusStatus | OnConfigChangeEvent (const LEAP_CONFIG_CHANGE_EVENT *configChangeEvent) |
PlusStatus | OnConfigResponseEvent (const LEAP_CONFIG_RESPONSE_EVENT *configResponseEvent) |
PlusStatus | OnConnectionEvent (const LEAP_CONNECTION_EVENT *connectionEvent) |
PlusStatus | OnConnectionLostEvent (const LEAP_CONNECTION_LOST_EVENT *connectionLostEvent) |
PlusStatus | OnDeviceEvent (const LEAP_DEVICE_EVENT *deviceEvent) |
PlusStatus | OnDeviceFailureEvent (const LEAP_DEVICE_FAILURE_EVENT *deviceFailureEvent) |
PlusStatus | OnDeviceLostEvent (const LEAP_DEVICE_EVENT *deviceEvent) |
PlusStatus | OnHeadPoseEvent (const LEAP_HEAD_POSE_EVENT *headPoseEvent) |
PlusStatus | OnImageEvent (const LEAP_IMAGE_EVENT *imageEvent) |
PlusStatus | OnLogEvent (const LEAP_LOG_EVENT *logEvent) |
PlusStatus | OnLogEvents (const LEAP_LOG_EVENTS *logEvents) |
PlusStatus | OnPointMappingChangeEvent (const LEAP_POINT_MAPPING_CHANGE_EVENT *pointMappingChangeEvent) |
PlusStatus | OnPolicyEvent (const LEAP_POLICY_EVENT *policyEvent) |
PlusStatus | OnTrackingEvent (const LEAP_TRACKING_EVENT *trackingEvent) |
std::string | ResultToString (eLeapRS) |
void | SetFrame (const LEAP_TRACKING_EVENT *trackingEvent) |
void | SetHeadPose (const LEAP_HEAD_POSE_EVENT *headPose) |
PlusStatus | ToolTimeStampedUpdateBone (std::string boneName, eLeapHandType handIndex, Finger fingerIndex, Bone boneIndex) |
PlusStatus | ToolTimeStampedUpdatePalm (const std::string &name, eLeapHandType hand) |
vtkPlusLeapMotion () | |
~vtkPlusLeapMotion () | |
![]() | |
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 | |
![]() | |
double | InternalUpdateRate |
vtkIGSIORecursiveCriticalSection * | UpdateMutex |
vtkTimeStamp | UpdateTime |
![]() | |
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 void * | vtkDataCaptureThread (vtkMultiThreader::ThreadInfo *data) |
![]() | |
static const int | VIRTUAL_DEVICE_FRAME_RATE = 50 |
Interface for the LeapMotion hand tracker.
Definition at line 26 of file vtkPlusLeapMotion.h.
Definition at line 30 of file vtkPlusLeapMotion.h.
|
protected |
Enumerator | |
---|---|
Bone_Metacarpal | |
Bone_Proximal | |
Bone_Intermediate | |
Bone_Distal |
Definition at line 75 of file vtkPlusLeapMotion.h.
|
protected |
Enumerator | |
---|---|
Finger_Thumb | |
Finger_Index | |
Finger_Middle | |
Finger_Ring | |
Finger_Pinky |
Definition at line 67 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 53 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 70 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 837 of file vtkPlusLeapMotion.cxx.
|
virtual |
Reimplemented from vtkPlusDevice.
|
protected |
Definition at line 483 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 497 of file vtkPlusLeapMotion.cxx.
|
virtual |
|
virtual |
|
virtual |
|
protectedvirtual |
Should be overridden to connect to the hardware
Reimplemented from vtkPlusDevice.
Definition at line 115 of file vtkPlusLeapMotion.cxx.
|
protectedvirtual |
Release the video driver. Should be overridden to disconnect from the hardware.
Reimplemented from vtkPlusDevice.
Definition at line 145 of file vtkPlusLeapMotion.cxx.
|
protectedvirtual |
Called at the end of StartRecording to allow hardware-specific actions for starting the recording
Reimplemented from vtkPlusDevice.
Definition at line 256 of file vtkPlusLeapMotion.cxx.
|
protectedvirtual |
Called at the beginning of StopRecording to allow hardware-specific actions for stopping the recording
Reimplemented from vtkPlusDevice.
Definition at line 269 of file vtkPlusLeapMotion.cxx.
|
protectedvirtual |
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 156 of file vtkPlusLeapMotion.cxx.
|
virtual |
|
virtual |
|
virtual |
Reimplemented from vtkPlusDevice.
|
inlinevirtual |
Is this device a tracker
Reimplemented from vtkPlusDevice.
Definition at line 33 of file vtkPlusLeapMotion.h.
|
static |
|
virtual |
|
virtual |
|
static |
|
protectedvirtual |
Perform any completion tasks once configured
Reimplemented from vtkPlusDevice.
Definition at line 280 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 656 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 662 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 503 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 509 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 515 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 527 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 521 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 779 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 668 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 613 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 633 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 773 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 533 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 550 of file vtkPlusLeapMotion.cxx.
|
virtual |
Reimplemented from vtkPlusDevice.
Definition at line 80 of file vtkPlusLeapMotion.cxx.
|
virtual |
Probe to see if the tracking system is present.
Reimplemented from vtkPlusDevice.
Definition at line 244 of file vtkPlusLeapMotion.cxx.
|
virtual |
Read configuration from xml data
Reimplemented from vtkPlusDevice.
Definition at line 91 of file vtkPlusLeapMotion.cxx.
|
virtual |
|
virtual |
|
protected |
Definition at line 787 of file vtkPlusLeapMotion.cxx.
|
static |
|
protected |
Definition at line 475 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 489 of file vtkPlusLeapMotion.cxx.
|
virtual |
|
virtual |
|
virtual |
|
protected |
Definition at line 370 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 433 of file vtkPlusLeapMotion.cxx.
|
virtual |
Write configuration to xml data
Reimplemented from vtkPlusDevice.
Definition at line 103 of file vtkPlusLeapMotion.cxx.
|
protected |
Definition at line 118 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 115 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 114 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 116 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 122 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 120 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 121 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 112 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 124 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 127 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 119 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 113 of file vtkPlusLeapMotion.h.
|
protected |
Definition at line 125 of file vtkPlusLeapMotion.h.