3Gear Systems SDK  v0.9.34
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator
Classes | Namespaces | Typedefs | Enumerations | Functions
HandTrackingMessage.h File Reference

Messages parsed out by the hand tracking client. More...

#include <string>
#include <vector>
#include <array>
#include <iosfwd>
#include <cmath>
#include "HandTrackingClient/VecMath.h"
#include "HandTrackingClient/OpenCVCamera.h"

Go to the source code of this file.

Classes

class  HandTrackingClient::HandState
 Structure holding the position, rotational frame and other information relevant to the state of the hand. More...
 
class  HandTrackingClient::ParseException
 Exception thrown when parsing a message fails. More...
 
class  HandTrackingClient::HandTrackingMessage
 
class  HandTrackingClient::BasicMessage
 
class  HandTrackingClient::PinchMessage
 Messages relating to pressing, releasing, dragging and moving of each hand. More...
 
class  HandTrackingClient::BimanualPinchMessage
 Messages relating to simultaneous or individual pinching. More...
 
class  HandTrackingClient::PointMessage
 
class  HandTrackingClient::PoseMessage
 
class  HandTrackingClient::WelcomeMessage
 
class  HandTrackingClient::UserMessage
 Message that exposes the user name and skinning information for the user's calibrated hands. More...
 
class  HandTrackingClient::CalibrationMessage
 Message that indicates the progress of calibrating the user's hand scale. More...
 

Namespaces

namespace  HandTrackingClient
 

Typedefs

typedef JointFrameIndex HandTrackingClient::JointIndex
 Included for backwards compatibility.
 

Enumerations

enum  HandTrackingClient::JointFrameIndex {
  HandTrackingClient::ROOT_JOINT = 0, HandTrackingClient::WRIST_JOINT = 1, HandTrackingClient::THUMB_PROXIMAL = 2, HandTrackingClient::THUMB_INTERMEDIATE = 3,
  HandTrackingClient::THUMB_DISTAL = 4, HandTrackingClient::INDEX_PROXIMAL = 5, HandTrackingClient::INDEX_INTERMEDIATE = 6, HandTrackingClient::INDEX_DISTAL = 7,
  HandTrackingClient::MIDDLE_PROXIMAL = 8, HandTrackingClient::MIDDLE_INTERMEDIATE = 9, HandTrackingClient::MIDDLE_DISTAL = 10, HandTrackingClient::RING_PROXIMAL = 11,
  HandTrackingClient::RING_INTERMEDIATE = 12, HandTrackingClient::RING_DISTAL = 13, HandTrackingClient::PINKY_PROXIMAL = 14, HandTrackingClient::PINKY_INTERMEDIATE = 15,
  HandTrackingClient::PINKY_DISTAL = 16
}
 Joint frames used for skinning. More...
 
enum  HandTrackingClient::FingerDOF {
  HandTrackingClient::THUMB_CMC_AA = 0, HandTrackingClient::THUMB_CMC_FE = 1, HandTrackingClient::THUMB_MCP = 2, HandTrackingClient::THUMB_IP = 3,
  HandTrackingClient::INDEX_MCP_AA = 4, HandTrackingClient::INDEX_MCP_FE = 5, HandTrackingClient::INDEX_PIP = 6, HandTrackingClient::MIDDLE_MCP_AA = 7,
  HandTrackingClient::MIDDLE_MCP_FE = 8, HandTrackingClient::MIDDLE_PIP = 9, HandTrackingClient::RING_MCP_AA = 10, HandTrackingClient::RING_MCP_FE = 11,
  HandTrackingClient::RING_PIP = 12, HandTrackingClient::PINKY_MCP_AA = 13, HandTrackingClient::PINKY_MCP_FE = 14, HandTrackingClient::PINKY_PIP = 15
}
 Degrees of freedom of the hand model, as reported by the HandTrackingClient::PoseMessage::getFingerDOFs function. More...
 
enum  HandTrackingClient::Hand { HandTrackingClient::LEFT_HAND = 0, HandTrackingClient::RIGHT_HAND = 1, HandTrackingClient::BOTH_HANDS = 2, HandTrackingClient::INVALID_HAND = 10000 }
 

Functions

const char * HandTrackingClient::handToString (Hand hand)
 
Hand HandTrackingClient::stringToHand (const std::string &str)
 

Detailed Description

Messages parsed out by the hand tracking client.

These are the messages that will get parsed out by the hand tracking client. You should respond to the relevant ones and ignore the ones you don't need. In particular, if you are using the raw pose layer (i.e., HandTrackingClient::PoseMessage), you should consider ignoring all gesture-related messages (e.g. HandTrackingClient::PointMessage, etc.).