OpenNI 1.0.0
Functions
Pose Detection Capability
User Generator

Functions

XN_C_API XnUInt32 xnGetNumberOfPoses (XnNodeHandle hInstance)
XN_C_API XnStatus xnGetAvailablePoses (XnNodeHandle hInstance, XnChar **pstrPoses, XnUInt32 *pnPoses)
XN_C_API XnStatus xnGetAllAvailablePoses (XnNodeHandle hInstance, XnChar **pstrPoses, XnUInt32 nNameLength, XnUInt32 *pnPoses)
XN_C_API XnStatus xnStartPoseDetection (XnNodeHandle hInstance, const XnChar *strPose, XnUserID user)
XN_C_API XnStatus xnStopPoseDetection (XnNodeHandle hInstance, XnUserID user)
XN_C_API XnStatus xnRegisterToPoseCallbacks (XnNodeHandle hInstance, XnPoseDetectionCallback PoseDetectionStartCB, XnPoseDetectionCallback PoseDetectionEndCB, void *pCookie, XnCallbackHandle *phCallback)
XN_C_API void xnUnregisterFromPoseCallbacks (XnNodeHandle hInstance, XnCallbackHandle hCallback)

Detailed Description

The Pose capability (XN_CAPABILITY_POSE_DETECTION) allows a User Generator to recognize when the user is in a specific pose.


Function Documentation

XN_C_API XnStatus xnGetAllAvailablePoses ( XnNodeHandle  hInstance,
XnChar **  pstrPoses,
XnUInt32  nNameLength,
XnUInt32 *  pnPoses 
)

Get the names of the supported poses.

Parameters:
hInstance[in] A handle to the instance
pstrPoses[out] Pre-allocated memory for the names of the supported poses
pnPoses[in,out] In input - size of the preallocated memory, in output - the number of pose names
XN_C_API XnStatus xnGetAvailablePoses ( XnNodeHandle  hInstance,
XnChar **  pstrPoses,
XnUInt32 *  pnPoses 
)

Get the names of the supported poses.

Parameters:
hInstance[in] A handle to the instance
pstrPoses[out] Pre-allocated memory for the names of the supported poses
pnPoses[in,out] In input - size of the preallocated memory, in output - the number of pose names
XN_C_API XnUInt32 xnGetNumberOfPoses ( XnNodeHandle  hInstance)

Get the number of the supported poses.

Parameters:
hInstance[in] A handle to the instance
XN_C_API XnStatus xnRegisterToPoseCallbacks ( XnNodeHandle  hInstance,
XnPoseDetectionCallback  PoseDetectionStartCB,
XnPoseDetectionCallback  PoseDetectionEndCB,
void *  pCookie,
XnCallbackHandle phCallback 
)

Register to callbacks for pose events.

Parameters:
hInstance[in] A handle to the instance
PoseDetectionStartCB[in] Function to be called when the pose is detected
PoseDetectionEndCB[in] Function to be called when the user is out of pose
pCookie[in] User's cookie, to be delivered to the callbacks
phCallback[out] The handle to these callbacks, to allow unregistration
XN_C_API XnStatus xnStartPoseDetection ( XnNodeHandle  hInstance,
const XnChar *  strPose,
XnUserID  user 
)

Start detection of a specific pose for a specific user.

Parameters:
hInstance[in] A handle to the instance
strPose[in] Name of requested pose
user[in] Id of user
XN_C_API XnStatus xnStopPoseDetection ( XnNodeHandle  hInstance,
XnUserID  user 
)

Stop detection of poses for a specific user.

Parameters:
hInstance[in] A handle to the instance
user[in] Id of user
XN_C_API void xnUnregisterFromPoseCallbacks ( XnNodeHandle  hInstance,
XnCallbackHandle  hCallback 
)

Unregister from pose events.

Parameters:
hInstance[in] A handle to the instance
hCallback[in] The handle received from registration