7 #ifndef __vtkPlusLeapMotion_h 8 #define __vtkPlusLeapMotion_h 10 #include "vtkPlusDataCollectionExport.h" 24 class vtkIGSIORecursiveCriticalSection;
31 void PrintSelf(ostream& os, vtkIndent indent);
44 vtkGetMacro(LeapHMDPolicy,
bool);
45 vtkSetMacro(LeapHMDPolicy,
bool);
46 vtkBooleanMacro(LeapHMDPolicy,
bool);
48 vtkGetMacro(RefusePauseResumePolicy,
bool);
49 vtkSetMacro(RefusePauseResumePolicy,
bool);
50 vtkBooleanMacro(RefusePauseResumePolicy,
bool);
52 vtkGetMacro(InvertImage,
bool);
53 vtkSetMacro(InvertImage,
bool);
54 vtkBooleanMacro(InvertImage,
bool);
82 PlusStatus ToolTimeStampedUpdateBone(std::string boneName, eLeapHandType handIndex, Finger fingerIndex, Bone boneIndex);
83 PlusStatus ToolTimeStampedUpdatePalm(
const std::string& name, eLeapHandType hand);
85 void SetFrame(
const LEAP_TRACKING_EVENT* trackingEvent);
86 LEAP_TRACKING_EVENT* GetFrame();
87 void SetHeadPose(
const LEAP_HEAD_POSE_EVENT* headPose);
88 LEAP_HEAD_POSE_EVENT* GetHeadPose();
92 PlusStatus OnConnectionEvent(
const LEAP_CONNECTION_EVENT* connectionEvent);
93 PlusStatus OnConnectionLostEvent(
const LEAP_CONNECTION_LOST_EVENT* connectionLostEvent);
94 PlusStatus OnDeviceEvent(
const LEAP_DEVICE_EVENT* deviceEvent);
95 PlusStatus OnDeviceLostEvent(
const LEAP_DEVICE_EVENT* deviceEvent);
96 PlusStatus OnDeviceFailureEvent(
const LEAP_DEVICE_FAILURE_EVENT* deviceFailureEvent);
97 PlusStatus OnPolicyEvent(
const LEAP_POLICY_EVENT* policyEvent);
98 PlusStatus OnTrackingEvent(
const LEAP_TRACKING_EVENT* trackingEvent);
99 PlusStatus OnLogEvent(
const LEAP_LOG_EVENT* logEvent);
100 PlusStatus OnLogEvents(
const LEAP_LOG_EVENTS* logEvents);
101 PlusStatus OnConfigChangeEvent(
const LEAP_CONFIG_CHANGE_EVENT* configChangeEvent);
102 PlusStatus OnConfigResponseEvent(
const LEAP_CONFIG_RESPONSE_EVENT* configResponseEvent);
103 PlusStatus OnImageEvent(
const LEAP_IMAGE_EVENT* imageEvent);
104 PlusStatus OnPointMappingChangeEvent(
const LEAP_POINT_MAPPING_CHANGE_EVENT* pointMappingChangeEvent);
105 PlusStatus OnHeadPoseEvent(
const LEAP_HEAD_POSE_EVENT* headPoseEvent);
108 std::string ResultToString(eLeapRS);
109 std::string EventToString(_eLeapEventType);
127 vtkIGSIORecursiveCriticalSection*
Mutex;
unsigned int PollTimeoutMs
Interface for the LeapMotion hand tracker.
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
virtual PlusStatus InternalStopRecording()
LEAP_CONNECTION Connection
Abstract interface for tracker and video devices.
LEAP_HEAD_POSE_EVENT LastHeadPoseEvent
LEAP_CONNECTION_MESSAGE LastMessage
virtual PlusStatus InternalConnect()
vtkPlusDataSource * RightCameraSource
bool RefusePauseResumePolicy
LEAP_TRACKING_EVENT LastTrackingEvent
vtkPlusDataSource * LeftCameraSource
virtual PlusStatus Probe()
virtual bool IsTracker() const
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *)
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *)
virtual PlusStatus InternalStartRecording()
vtkIGSIORecursiveCriticalSection * Mutex
virtual PlusStatus NotifyConfigured()
virtual PlusStatus InternalDisconnect()
virtual PlusStatus InternalUpdate()
static vtkPlusDevice * New()
Interface to a 3D positioning tool, video source, or generalized data stream.