XnTypes.h File Reference
`#include <XnStatus.h>`
`#include <XnOS.h>`

Go to the source code of this file.

## Classes

struct | XnVersion
struct | XnProductionNodeDescription
struct | XnNodeInfoListIterator
struct | XnLicense
struct | XnRGB24Pixel
struct | XnYUV422DoublePixel
struct | XnMapOutputMode
struct | XnWaveOutputMode
struct | XnVector3D
struct | XnBoundingBox3D
struct | XnCropping
struct | XnFieldOfView
struct | XnSupportedPixelFormats
struct | XnMatrix3X3
struct | XnPlane3D
struct | XnSkeletonJointPosition
struct | XnSkeletonJointOrientation
struct | XnSkeletonJointTransformation
struct | XnRecorderOutputStreamInterface
struct | XnPlayerInputStreamInterface
struct | XnNodeNotifications
struct | XnUInt32XYPair
struct | XnOutputMetaData
struct | XnMapMetaData
struct | XnDepthMetaData
struct | XnImageMetaData
struct | XnIRMetaData
struct | XnAudioMetaData
struct | XnSceneMetaData

## Macros

#define | XN_MAX_NAME_LENGTH 80
#define | XN_MAX_CREATION_INFO_LENGTH 255
#define | XN_MAX_LICENSE_LENGTH 255
#define | XN_NODE_WAIT_FOR_DATA_TIMEOUT 2000
#define | XN_VENDOR_OPEN_NI "OpenNI"
#define | XN_FORMAT_NAME_ONI "oni"
#define | XN_SCRIPT_FORMAT_XML "xml"
#define | XN_PLAYBACK_SPEED_FASTEST 0.0
#define | XN_AUTO_CONTROL XN_MIN_INT32
#define | XN_DEPTH_NO_SAMPLE_VALUE ((XnDepthPixel)0)
#define | XN_CAPABILITY_EXTENDED_SERIALIZATION "ExtendedSerialization"
#define | XN_CAPABILITY_MIRROR "Mirror"
#define | XN_CAPABILITY_ALTERNATIVE_VIEW_POINT "AlternativeViewPoint"
#define | XN_CAPABILITY_CROPPING "Cropping"
#define | XN_CAPABILITY_USER_POSITION "UserPosition"
#define | XN_CAPABILITY_SKELETON "User::Skeleton"
#define | XN_CAPABILITY_POSE_DETECTION "User::PoseDetection"
#define | XN_CAPABILITY_LOCK_AWARE "LockAware"
#define | XN_CAPABILITY_ERROR_STATE "ErrorState"
#define | XN_CAPABILITY_FRAME_SYNC "FrameSync"
#define | XN_CAPABILITY_DEVICE_IDENTIFICATION "DeviceIdentification"
#define | XN_CAPABILITY_BRIGHTNESS "Brightness"
#define | XN_CAPABILITY_CONTRAST "Contrast"
#define | XN_CAPABILITY_HUE "Hue"
#define | XN_CAPABILITY_SATURATION "Saturation"
#define | XN_CAPABILITY_SHARPNESS "Sharpness"
#define | XN_CAPABILITY_GAMMA "Gamma"
#define | XN_CAPABILITY_COLOR_TEMPERATURE "ColorTemperature"
#define | XN_CAPABILITY_BACKLIGHT_COMPENSATION "BacklightCompensation"
#define | XN_CAPABILITY_GAIN "Gain"
#define | XN_CAPABILITY_PAN "Pan"
#define | XN_CAPABILITY_TILT "Tilt"
#define | XN_CAPABILITY_ROLL "Roll"
#define | XN_CAPABILITY_ZOOM "Zoom"
#define | XN_CAPABILITY_EXPOSURE "Exposure"
#define | XN_CAPABILITY_IRIS "Iris"
#define | XN_CAPABILITY_FOCUS "Focus"
#define | XN_CAPABILITY_LOW_LIGHT_COMPENSATION "LowLightCompensation"
#define | XN_CAPABILITY_ANTI_FLICKER "AntiFlicker"
#define | XN_CAPABILITY_HAND_TOUCHING_FOV_EDGE "Hands::HandTouchingFOVEdge"
#define | XN_CAPABILITY_ANTI_FILCKER XN_CAPABILITY_ANTI_FLICKER
#define | XN_QQVGA_X_RES 160
#define | XN_QQVGA_Y_RES 120
#define | XN_CGA_X_RES 320
#define | XN_CGA_Y_RES 200
#define | XN_QVGA_X_RES 320
#define | XN_QVGA_Y_RES 240
#define | XN_VGA_X_RES 640
#define | XN_VGA_Y_RES 480
#define | XN_SVGA_X_RES 800
#define | XN_SVGA_Y_RES 600
#define | XN_XGA_X_RES 1024
#define | XN_XGA_Y_RES 768
#define | XN_720P_X_RES 1280
#define | XN_720P_Y_RES 720
#define | XN_SXGA_X_RES 1280
#define | XN_SXGA_Y_RES 1024
#define | XN_UXGA_X_RES 1600
#define | XN_UXGA_Y_RES 1200
#define | XN_1080P_X_RES 1920
#define | XN_1080P_Y_RES 1080
#define | XN_QCIF_X_RES 176
#define | XN_QCIF_Y_RES 144
#define | XN_240P_X_RES 423
#define | XN_240P_Y_RES 240
#define | XN_CIF_X_RES 352
#define | XN_CIF_Y_RES 288
#define | XN_WVGA_X_RES 640
#define | XN_WVGA_Y_RES 360
#define | XN_480P_X_RES 864
#define | XN_480P_Y_RES 480
#define | XN_576P_X_RES 1024
#define | XN_576P_Y_RES 576
#define | XN_DV_X_RES 960
#define | XN_DV_Y_RES 720
#define | XN_CODEC_ID(c1, c2, c3, c4)

## Typedefs

typedef struct XnContext | XnContext
typedef struct XnInternalNodeData * | XnNodeHandle
typedef XnUInt32 | XnLockHandle
typedef XnInt32 | XnProductionNodeType
typedef enum XnPredefinedProductionNodeType | XnPredefinedProductionNodeType
typedef struct XnVersion | XnVersion
typedef struct XnProductionNodeDescription | XnProductionNodeDescription
typedef struct XnNodeInfo | XnNodeInfo
typedef struct XnNodeInfoListNode | XnNodeInfoListNode
typedef struct XnNodeInfoList | XnNodeInfoList
typedef struct XnNodeInfoListIterator | XnNodeInfoListIterator
typedef struct XnNodeQuery | XnNodeQuery
typedef struct XnLicense | XnLicense
typedef struct XnEnumerationErrors | XnEnumerationErrors
typedef void * | XnModuleNodeHandle
typedef void(* | XnStateChangedHandler) (XnNodeHandle hNode, void *pCookie)
typedef void(* | XnErrorStateChangedHandler) (XnStatus errorState, void *pCookie)
typedef void(* | XnFreeHandler) (const void *pData)
typedef void(* | XnContextShuttingDownHandler) (XnContext *pContext, void *pCookie)
typedef void(* | XnNodeCreationHandler) (XnContext *pContext, XnNodeHandle hCreatedNode, void *pCookie)
typedef void(* | XnNodeDestructionHandler) (XnContext *pContext, const XnChar *strDestroyedNodeName, void *pCookie)
typedef void * | XnCallbackHandle
typedef XnUInt16 | XnDepthPixel
typedef struct XnRGB24Pixel | XnRGB24Pixel
typedef struct XnYUV422DoublePixel | XnYUV422DoublePixel
typedef XnUInt8 | XnGrayscale8Pixel
typedef XnUInt16 | XnGrayscale16Pixel
typedef XnGrayscale16Pixel | XnIRPixel
typedef XnUInt16 | XnLabel
typedef enum XnResolution | XnResolution
typedef struct XnMapOutputMode | XnMapOutputMode
typedef enum XnSampleRate | XnSampleRate
typedef struct XnWaveOutputMode | XnWaveOutputMode
typedef struct XnVector3D | XnVector3D
typedef XnVector3D | XnPoint3D
typedef struct XnBoundingBox3D | XnBoundingBox3D
typedef struct XnCropping | XnCropping
typedef struct XnFieldOfView | XnFieldOfView
typedef enum XnPixelFormat | XnPixelFormat
typedef struct XnSupportedPixelFormats | XnSupportedPixelFormats
typedef enum XnPlayerSeekOrigin | XnPlayerSeekOrigin
typedef enum XnPowerLineFrequency | XnPowerLineFrequency
typedef XnUInt32 | XnUserID
typedef XnFloat | XnConfidence
typedef struct XnMatrix3X3 | XnMatrix3X3
typedef struct XnPlane3D | XnPlane3D
typedef struct XnSkeletonJointPosition | XnSkeletonJointPosition
typedef struct XnSkeletonJointOrientation | XnSkeletonJointOrientation
typedef struct XnSkeletonJointTransformation | XnSkeletonJointTransformation
typedef enum XnSkeletonJoint | XnSkeletonJoint
typedef enum XnSkeletonProfile | XnSkeletonProfile
typedef enum XnPoseDetectionStatus | XnPoseDetectionStatus
typedef enum XnPoseDetectionState | XnPoseDetectionState
typedef enum XnCalibrationStatus | XnCalibrationStatus
typedef enum XnDirection | XnDirection
typedef void(* | XnUserHandler) (XnNodeHandle hNode, XnUserID user, void *pCookie)
typedef void(* | XnHandCreate) (XnNodeHandle hNode, XnUserID user, const XnPoint3D *pPosition, XnFloat fTime, void *pCookie)
typedef void(* | XnHandUpdate) (XnNodeHandle hNode, XnUserID user, const XnPoint3D *pPosition, XnFloat fTime, void *pCookie)
typedef void(* | XnHandDestroy) (XnNodeHandle hNode, XnUserID user, XnFloat fTime, void *pCookie)
typedef void(* | XnHandTouchingFOVEdge) (XnNodeHandle hNode, XnUserID user, const XnPoint3D *pPosition, XnFloat fTime, XnDirection eDir, void *pCookie)
typedef void(* | XnGestureRecognized) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pIDPosition, const XnPoint3D *pEndPosition, void *pCookie)
typedef void(* | XnGestureProgress) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pPosition, XnFloat fProgress, void *pCookie)
typedef void(* | XnGestureIntermediateStageCompleted) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pPosition, void *pCookie)
typedef void(* | XnGestureReadyForNextIntermediateStage) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pPosition, void *pCookie)
typedef void(* | XnCalibrationStart) (XnNodeHandle hNode, XnUserID user, void *pCookie)
typedef void(* | XnCalibrationEnd) (XnNodeHandle hNode, XnUserID user, XnBool bSuccess, void *pCookie)
typedef void(* | XnCalibrationInProgress) (XnNodeHandle hNode, XnUserID user, XnCalibrationStatus calibrationError, void *pCookie)
typedef void(* | XnCalibrationComplete) (XnNodeHandle hNode, XnUserID user, XnCalibrationStatus calibrationError, void *pCookie)
typedef void(* | XnPoseDetectionCallback) (XnNodeHandle hNode, const XnChar *strPose, XnUserID user, void *pCookie)
typedef void(* | XnPoseDetectionInProgress) (XnNodeHandle hNode, const XnChar *strPose, XnUserID user, XnPoseDetectionStatus poseDetectionError, void *pCookie)
typedef enum XnRecordMedium | XnRecordMedium
typedef XnUInt32 | XnCodecID
typedef struct XnRecorderOutputStreamInterface | XnRecorderOutputStreamInterface
typedef struct XnPlayerInputStreamInterface | XnPlayerInputStreamInterface
typedef struct XnNodeNotifications | XnNodeNotifications
typedef struct XnUInt32XYPair | XnUInt32XYPair
typedef struct XnOutputMetaData | XnOutputMetaData
typedef struct XnMapMetaData | XnMapMetaData
typedef struct XnDepthMetaData | XnDepthMetaData
typedef struct XnImageMetaData | XnImageMetaData
typedef struct XnIRMetaData | XnIRMetaData
typedef struct XnAudioMetaData | XnAudioMetaData
typedef struct XnSceneMetaData | XnSceneMetaData

## Enumerations

enum

XnPredefinedProductionNodeType {
XN_NODE_TYPE_INVALID = -1 , XN_NODE_TYPE_DEVICE = 1 , XN_NODE_TYPE_DEPTH = 2 , XN_NODE_TYPE_IMAGE = 3 ,
XN_NODE_TYPE_AUDIO = 4 , XN_NODE_TYPE_IR = 5 , XN_NODE_TYPE_USER = 6 , XN_NODE_TYPE_RECORDER = 7 ,
XN_NODE_TYPE_PLAYER = 8 , XN_NODE_TYPE_GESTURE = 9 , XN_NODE_TYPE_SCENE = 10 , XN_NODE_TYPE_HANDS = 11 ,
XN_NODE_TYPE_CODEC = 12 , XN_NODE_TYPE_PRODUCTION_NODE = 13 , XN_NODE_TYPE_GENERATOR = 14 , XN_NODE_TYPE_MAP_GENERATOR = 15 ,
XN_NODE_TYPE_SCRIPT = 16 , XN_NODE_TYPE_FIRST_EXTENSION
}

enum | XnResolution { XN_RES_CUSTOM = 0 , XN_RES_QQVGA = 1 , XN_RES_CGA = 2 , XN_RES_QVGA = 3 , XN_RES_VGA = 4 , XN_RES_SVGA = 5 , XN_RES_XGA = 6 , XN_RES_720P = 7 , XN_RES_SXGA = 8 , XN_RES_UXGA = 9 , XN_RES_1080P = 10 , XN_RES_QCIF = 11 , XN_RES_240P = 12 , XN_RES_CIF = 13 , XN_RES_WVGA = 14 , XN_RES_480P = 15 , XN_RES_576P = 16 , XN_RES_DV = 17 }
enum | XnSampleRate { XN_SAMPLE_RATE_8K = 8000 , XN_SAMPLE_RATE_11K = 11025 , XN_SAMPLE_RATE_12K = 12000 , XN_SAMPLE_RATE_16K = 16000 , XN_SAMPLE_RATE_22K = 22050 , XN_SAMPLE_RATE_24K = 24000 , XN_SAMPLE_RATE_32K = 32000 , XN_SAMPLE_RATE_44K = 44100 , XN_SAMPLE_RATE_48K = 48000 }
enum | XnPixelFormat { XN_PIXEL_FORMAT_RGB24 = 1 , XN_PIXEL_FORMAT_YUV422 = 2 , XN_PIXEL_FORMAT_GRAYSCALE_8_BIT = 3 , XN_PIXEL_FORMAT_GRAYSCALE_16_BIT = 4 , XN_PIXEL_FORMAT_MJPEG = 5 }
enum | XnPlayerSeekOrigin { XN_PLAYER_SEEK_SET = 0 , XN_PLAYER_SEEK_CUR = 1 , XN_PLAYER_SEEK_END = 2 }
enum | XnPowerLineFrequency { XN_POWER_LINE_FREQUENCY_OFF = 0 , XN_POWER_LINE_FREQUENCY_50_HZ = 50 , XN_POWER_LINE_FREQUENCY_60_HZ = 60 }

enum

XnSkeletonJoint {
XN_SKEL_HEAD = 1 , XN_SKEL_NECK = 2 , XN_SKEL_TORSO = 3 , XN_SKEL_WAIST = 4 ,
XN_SKEL_LEFT_COLLAR = 5 , XN_SKEL_LEFT_SHOULDER = 6 , XN_SKEL_LEFT_ELBOW = 7 , XN_SKEL_LEFT_WRIST = 8 ,
XN_SKEL_LEFT_HAND = 9 , XN_SKEL_LEFT_FINGERTIP =10 , XN_SKEL_RIGHT_COLLAR =11 , XN_SKEL_RIGHT_SHOULDER =12 ,
XN_SKEL_RIGHT_ELBOW =13 , XN_SKEL_RIGHT_WRIST =14 , XN_SKEL_RIGHT_HAND =15 , XN_SKEL_RIGHT_FINGERTIP =16 ,
XN_SKEL_LEFT_HIP =17 , XN_SKEL_LEFT_KNEE =18 , XN_SKEL_LEFT_ANKLE =19 , XN_SKEL_LEFT_FOOT =20 ,
XN_SKEL_RIGHT_HIP =21 , XN_SKEL_RIGHT_KNEE =22 , XN_SKEL_RIGHT_ANKLE =23 , XN_SKEL_RIGHT_FOOT =24
}

enum | XnSkeletonProfile { XN_SKEL_PROFILE_NONE = 1 , XN_SKEL_PROFILE_ALL = 2 , XN_SKEL_PROFILE_UPPER = 3 , XN_SKEL_PROFILE_LOWER = 4 , XN_SKEL_PROFILE_HEAD_HANDS = 5 }
enum | XnPoseDetectionStatus { XN_POSE_DETECTION_STATUS_OK = 0 , XN_POSE_DETECTION_STATUS_NO_USER = 1 , XN_POSE_DETECTION_STATUS_TOP_FOV = 2 , XN_POSE_DETECTION_STATUS_SIDE_FOV = 3 , XN_POSE_DETECTION_STATUS_ERROR = 4 , XN_POSE_DETECTION_STATUS_NO_TRACKING = 5 }
enum | XnPoseDetectionState { XN_POSE_DETECTION_STATE_IN_POSE =0 , XN_POSE_DETECTION_STATE_OUT_OF_POSE =1 , XN_POSE_DETECTION_STATE_UNDEFINED =2 }

enum

XnCalibrationStatus {
XN_CALIBRATION_STATUS_OK = 0 , XN_CALIBRATION_STATUS_NO_USER = 1 , XN_CALIBRATION_STATUS_ARM = 2 , XN_CALIBRATION_STATUS_LEG = 3 ,
XN_CALIBRATION_STATUS_HEAD = 4 , XN_CALIBRATION_STATUS_TORSO = 5 , XN_CALIBRATION_STATUS_TOP_FOV = 6 , XN_CALIBRATION_STATUS_SIDE_FOV = 7 ,
XN_CALIBRATION_STATUS_POSE = 8 , XN_CALIBRATION_STATUS_MANUAL_ABORT = 9 , XN_CALIBRATION_STATUS_MANUAL_RESET = 10 , XN_CALIBRATION_STATUS_TIMEOUT_FAIL = 11
}

enum | XnDirection { XN_DIRECTION_ILLEGAL = 0 , XN_DIRECTION_LEFT = 1 , XN_DIRECTION_RIGHT = 2 , XN_DIRECTION_UP = 3 , XN_DIRECTION_DOWN = 4 , XN_DIRECTION_FORWARD = 5 , XN_DIRECTION_BACKWARD = 6 }
enum | XnRecordMedium { XN_RECORD_MEDIUM_FILE = 0 }

## Macro Definition Documentation

## XN_1080P_X_RES

#define XN_1080P_X_RES 1920

## XN_1080P_Y_RES

#define XN_1080P_Y_RES 1080

## XN_240P_X_RES

#define XN_240P_X_RES 423

## XN_240P_Y_RES

#define XN_240P_Y_RES 240

## XN_480P_X_RES

#define XN_480P_X_RES 864

## XN_480P_Y_RES

#define XN_480P_Y_RES 480

## XN_576P_X_RES

#define XN_576P_X_RES 1024

## XN_576P_Y_RES

#define XN_576P_Y_RES 576

## XN_720P_X_RES

#define XN_720P_X_RES 1280

## XN_720P_Y_RES

#define XN_720P_Y_RES 720

## XN_AUTO_CONTROL

#define XN_AUTO_CONTROL XN_MIN_INT32

represents a value for automatic control for nodes supporting it, as part of the General Int Capability.

## XN_CAPABILITY_ALTERNATIVE_VIEW_POINT

#define XN_CAPABILITY_ALTERNATIVE_VIEW_POINT "AlternativeViewPoint"

## XN_CAPABILITY_ANTI_FILCKER

#define XN_CAPABILITY_ANTI_FILCKER XN_CAPABILITY_ANTI_FLICKER

## XN_CAPABILITY_ANTI_FLICKER

#define XN_CAPABILITY_ANTI_FLICKER "AntiFlicker"

## XN_CAPABILITY_BACKLIGHT_COMPENSATION

#define XN_CAPABILITY_BACKLIGHT_COMPENSATION "BacklightCompensation"

## XN_CAPABILITY_BRIGHTNESS

#define XN_CAPABILITY_BRIGHTNESS "Brightness"

## XN_CAPABILITY_COLOR_TEMPERATURE

#define XN_CAPABILITY_COLOR_TEMPERATURE "ColorTemperature"

## XN_CAPABILITY_CONTRAST

#define XN_CAPABILITY_CONTRAST "Contrast"

## XN_CAPABILITY_CROPPING

#define XN_CAPABILITY_CROPPING "Cropping"

## XN_CAPABILITY_DEVICE_IDENTIFICATION

#define XN_CAPABILITY_DEVICE_IDENTIFICATION "DeviceIdentification"

## XN_CAPABILITY_ERROR_STATE

#define XN_CAPABILITY_ERROR_STATE "ErrorState"

## XN_CAPABILITY_EXPOSURE

#define XN_CAPABILITY_EXPOSURE "Exposure"

## XN_CAPABILITY_EXTENDED_SERIALIZATION

#define XN_CAPABILITY_EXTENDED_SERIALIZATION "ExtendedSerialization"

## XN_CAPABILITY_FOCUS

#define XN_CAPABILITY_FOCUS "Focus"

## XN_CAPABILITY_FRAME_SYNC

#define XN_CAPABILITY_FRAME_SYNC "FrameSync"

## XN_CAPABILITY_GAIN

#define XN_CAPABILITY_GAIN "Gain"

## XN_CAPABILITY_GAMMA

#define XN_CAPABILITY_GAMMA "Gamma"

## XN_CAPABILITY_HAND_TOUCHING_FOV_EDGE

#define XN_CAPABILITY_HAND_TOUCHING_FOV_EDGE "Hands::HandTouchingFOVEdge"

## XN_CAPABILITY_HUE

#define XN_CAPABILITY_HUE "Hue"

## XN_CAPABILITY_IRIS

#define XN_CAPABILITY_IRIS "Iris"

## XN_CAPABILITY_LOCK_AWARE

#define XN_CAPABILITY_LOCK_AWARE "LockAware"

## XN_CAPABILITY_LOW_LIGHT_COMPENSATION

#define XN_CAPABILITY_LOW_LIGHT_COMPENSATION "LowLightCompensation"

## XN_CAPABILITY_MIRROR

#define XN_CAPABILITY_MIRROR "Mirror"

## XN_CAPABILITY_PAN

#define XN_CAPABILITY_PAN "Pan"

## XN_CAPABILITY_POSE_DETECTION

#define XN_CAPABILITY_POSE_DETECTION "User::PoseDetection"

## XN_CAPABILITY_ROLL

#define XN_CAPABILITY_ROLL "Roll"

## XN_CAPABILITY_SATURATION

#define XN_CAPABILITY_SATURATION "Saturation"

## XN_CAPABILITY_SHARPNESS

#define XN_CAPABILITY_SHARPNESS "Sharpness"

## XN_CAPABILITY_SKELETON

#define XN_CAPABILITY_SKELETON "User::Skeleton"

## XN_CAPABILITY_TILT

#define XN_CAPABILITY_TILT "Tilt"

## XN_CAPABILITY_USER_POSITION

#define XN_CAPABILITY_USER_POSITION "UserPosition"

## XN_CAPABILITY_ZOOM

#define XN_CAPABILITY_ZOOM "Zoom"

## XN_CGA_X_RES

#define XN_CGA_X_RES 320

## XN_CGA_Y_RES

#define XN_CGA_Y_RES 200

## XN_CIF_X_RES

#define XN_CIF_X_RES 352

## XN_CIF_Y_RES

#define XN_CIF_Y_RES 288

## XN_CODEC_ID

#define XN_CODEC_ID | ( |  | c1,
|  |  | c2,
|  |  | c3,
|  |  | c4 )

Value:
(XnCodecID)((c4 << 24) | (c3 << 16) | (c2 << 8) | c1)
XnCodecID
XnUInt32 XnCodecID
Definition XnTypes.h:839

Define a Codec ID by 4 characters, e.g. XN_CODEC_ID('J','P','E','G')

## XN_DEPTH_NO_SAMPLE_VALUE

#define XN_DEPTH_NO_SAMPLE_VALUE ((XnDepthPixel)0)

Defines the value of a no-sample depth pixel.

## XN_DV_X_RES

#define XN_DV_X_RES 960

## XN_DV_Y_RES

#define XN_DV_Y_RES 720

## XN_FORMAT_NAME_ONI

#define XN_FORMAT_NAME_ONI "oni"

The name of the OpenNI recording format.

## XN_MAX_CREATION_INFO_LENGTH

#define XN_MAX_CREATION_INFO_LENGTH 255

The maximum length of a creation info string

## XN_MAX_LICENSE_LENGTH

#define XN_MAX_LICENSE_LENGTH 255

The maxumim length of a license key

## XN_MAX_NAME_LENGTH

#define XN_MAX_NAME_LENGTH 80

The maximum length of names of objects in OpenNI

## XN_NODE_WAIT_FOR_DATA_TIMEOUT

#define XN_NODE_WAIT_FOR_DATA_TIMEOUT 2000

The maximum time to wait for node new data with the xnWaitXXXUpdateXXX functions

## XN_PLAYBACK_SPEED_FASTEST

#define XN_PLAYBACK_SPEED_FASTEST 0.0

represents playback speed which does not consider file timestamps.

## XN_QCIF_X_RES

#define XN_QCIF_X_RES 176

## XN_QCIF_Y_RES

#define XN_QCIF_Y_RES 144

## XN_QQVGA_X_RES

#define XN_QQVGA_X_RES 160

## XN_QQVGA_Y_RES

#define XN_QQVGA_Y_RES 120

## XN_QVGA_X_RES

#define XN_QVGA_X_RES 320

## XN_QVGA_Y_RES

#define XN_QVGA_Y_RES 240

## XN_SCRIPT_FORMAT_XML

#define XN_SCRIPT_FORMAT_XML "xml"

The name of the OpenNI XML script format.

## XN_SVGA_X_RES

#define XN_SVGA_X_RES 800

## XN_SVGA_Y_RES

#define XN_SVGA_Y_RES 600

## XN_SXGA_X_RES

#define XN_SXGA_X_RES 1280

## XN_SXGA_Y_RES

#define XN_SXGA_Y_RES 1024

## XN_UXGA_X_RES

#define XN_UXGA_X_RES 1600

## XN_UXGA_Y_RES

#define XN_UXGA_Y_RES 1200

## XN_VENDOR_OPEN_NI

#define XN_VENDOR_OPEN_NI "OpenNI"

OpenNI vendor ID, used by nodes supplied by OpenNI itself.

## XN_VGA_X_RES

#define XN_VGA_X_RES 640

## XN_VGA_Y_RES

#define XN_VGA_Y_RES 480

## XN_WVGA_X_RES

#define XN_WVGA_X_RES 640

## XN_WVGA_Y_RES

#define XN_WVGA_Y_RES 360

## XN_XGA_X_RES

#define XN_XGA_X_RES 1024

## XN_XGA_Y_RES

#define XN_XGA_Y_RES 768

## Typedef Documentation

## XnAudioMetaData

typedef struct XnAudioMetaData XnAudioMetaData

## XnBoundingBox3D

typedef struct XnBoundingBox3D XnBoundingBox3D

Representation of an axis-aligned box in 3D space

## XnCalibrationComplete

typedef void(* XnCalibrationComplete) (XnNodeHandle hNode, XnUserID user, XnCalibrationStatus calibrationError, void *pCookie)

## XnCalibrationEnd

typedef void(* XnCalibrationEnd) (XnNodeHandle hNode, XnUserID user, XnBool bSuccess, void *pCookie)

Callback for indication that a specific user's skeleton has now completed the calibration process

Parameters

  hNode | [in] A handle to the skeleton capability that raised this event.
  user | [in] The id of the user for which calibration was attempted.
  bSuccess | [in] An indication of whether or not the calibration attempt succeeded.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnCalibrationInProgress

typedef void(* XnCalibrationInProgress) (XnNodeHandle hNode, XnUserID user, XnCalibrationStatus calibrationError, void *pCookie)

## XnCalibrationStart

typedef void(* XnCalibrationStart) (XnNodeHandle hNode, XnUserID user, void *pCookie)

Callback for indication that a specific user's skeleton is now starting the calibration process

Parameters

  hNode | [in] A handle to the skeleton capability that raised this event.
  user | [in] The id of the user that's being calibrated.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnCalibrationStatus

typedef enum XnCalibrationStatus XnCalibrationStatus

Possible statuses for calibration

## XnCallbackHandle

typedef void* XnCallbackHandle

Handle to a registered callback function.

## XnCodecID

typedef XnUInt32 XnCodecID

An ID of a codec. See xnCreateCodec.

## XnConfidence

typedef XnFloat XnConfidence

## XnContext

typedef struct XnContext XnContext

The context of an OpenNI library.

## XnContextShuttingDownHandler

typedef void(* XnContextShuttingDownHandler) (XnContext *pContext, void *pCookie)

## XnCropping

typedef struct XnCropping XnCropping

Cropping configuration

## XnDepthMetaData

typedef struct XnDepthMetaData XnDepthMetaData

Holds information about a frame of depth.

## XnDepthPixel

typedef XnUInt16 XnDepthPixel

Defines the depth values type (16-bit values).

## XnDirection

typedef enum XnDirection XnDirection

## XnErrorStateChangedHandler

typedef void(* XnErrorStateChangedHandler) (XnStatus errorState, void *pCookie)

Prototype for error state change callback function.

Parameters

  errorState | [in] The new error state. A value of XN_STATUS_OK means there is no longer an error.
  pCookie | [in] A user-provided cookie that was given when registering to the event.

## XnFieldOfView

typedef struct XnFieldOfView XnFieldOfView

Field-Of-View

## XnFreeHandler

typedef void(* XnFreeHandler) (const void *pData)

Prototype for freeing data callbacks.

Parameters

  pData | [in] The data to be freed.

## XnGestureIntermediateStageCompleted

typedef void(* XnGestureIntermediateStageCompleted) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pPosition, void *pCookie)

## XnGestureProgress

typedef void(* XnGestureProgress) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pPosition, XnFloat fProgress, void *pCookie)

Callback for indication that a certain gesture is in progress

Parameters

  hNode | [in] A handle to the gesture generator that raised this event.
  strGesture | [in] The gesture that is on its way to being recognized.
  pPosition | [in] The current position of the hand that is performing the gesture.
  fProgress | [in] The percentage of the gesture that was already performed.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnGestureReadyForNextIntermediateStage

typedef void(* XnGestureReadyForNextIntermediateStage) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pPosition, void *pCookie)

## XnGestureRecognized

typedef void(* XnGestureRecognized) (XnNodeHandle hNode, const XnChar *strGesture, const XnPoint3D *pIDPosition, const XnPoint3D *pEndPosition, void *pCookie)

Callback for the recognition of a gesture

Parameters

  hNode | [in] A handle to the gesture generator that raised this event.
  strGesture | [in] The gesture that was recognized.
  pIDPosition | [in] The position in which the gesture was identified.
  pEndPosition | [in] The position of the hand that performed the gesture at the end of the gesture.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnGrayscale16Pixel

typedef XnUInt16 XnGrayscale16Pixel

Defines the image Grayscale16 pixel type.

## XnGrayscale8Pixel

typedef XnUInt8 XnGrayscale8Pixel

Defines the image Grayscale8 pixel type.

## XnHandCreate

typedef void(* XnHandCreate) (XnNodeHandle hNode, XnUserID user, const XnPoint3D *pPosition, XnFloat fTime, void *pCookie)

Callback for the creation of a new hand.

Parameters

  hNode | [in] A handle to the hands generator that raised this event.
  user | [in] The id of the new hand.
  pPosition | [in] The position in which the hand was created.
  fTime | [in] Timestamp, in seconds.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnHandDestroy

typedef void(* XnHandDestroy) (XnNodeHandle hNode, XnUserID user, XnFloat fTime, void *pCookie)

Callback for the disappearance of a hand.

Parameters

  hNode | [in] A handle to the hands generator that raised this event.
  user | [in] The id of the hand that disappeared.
  fTime | [in] Timestamp, in seconds.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnHandTouchingFOVEdge

typedef void(* XnHandTouchingFOVEdge) (XnNodeHandle hNode, XnUserID user, const XnPoint3D *pPosition, XnFloat fTime, XnDirection eDir, void *pCookie)

Callback for when a hand reaches the edge of the FOV

Parameters

  hNode | [in] A handle to the hand generator that raised this event.
  user | [in] The id of the hand that reached FOV
  pPosition | [in] The current position of the hand
  fTime | [in] Timestamp, in seconds
  eDir | [in] The direction of the edge that is being reached
  pCookie | [in] A user-provided cookie that was given when reigstering to this event

## XnHandUpdate

typedef void(* XnHandUpdate) (XnNodeHandle hNode, XnUserID user, const XnPoint3D *pPosition, XnFloat fTime, void *pCookie)

Callback for a new position of an already-existing hand.

Parameters

  hNode | [in] A handle to the hands generator that raised this event.
  user | [in] The id of the hand that moved.
  pPosition | [in] The new position of the relevant hand.
  fTime | [in] Timestamp, in seconds.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnImageMetaData

typedef struct XnImageMetaData XnImageMetaData

Holds information about an image frame.

## XnIRMetaData

typedef struct XnIRMetaData XnIRMetaData

Holds information about an IR frame.

## XnIRPixel

typedef XnGrayscale16Pixel XnIRPixel

Defines the IR values type (16-bit grayscale).

## XnLabel

typedef XnUInt16 XnLabel

Defines the label type

## XnLicense

typedef struct XnLicense XnLicense

A license key.

## XnLockHandle

typedef XnUInt32 XnLockHandle

A handle to a lock. A value of NULL represents an invalid handle.

## XnMapMetaData

typedef struct XnMapMetaData XnMapMetaData

Holds information about a frame of data that has a map format.

## XnMapOutputMode

typedef struct XnMapOutputMode XnMapOutputMode

The output mode of a map generator.

## XnMatrix3X3

typedef struct XnMatrix3X3 XnMatrix3X3

A 3x3 matrix of floating point values

## XnModuleNodeHandle

typedef void* XnModuleNodeHandle

A handle to an instance of a generator.

## XnNodeCreationHandler

typedef void(* XnNodeCreationHandler) (XnContext *pContext, XnNodeHandle hCreatedNode, void *pCookie)

Prototype for the 'Node Creation' event handler.

Parameters

  [in] | pContext | The context raising the event.
  [in] | hCreatedNode | A handle to the newly created node.
  [in] | pCookie | A user-provided cookie that was given when registering to the event.

Remarks
  The passed handle (`hCreatedNode`) is not referenced. If your handler keeps this handle for later use, it must call xnProductionNodeAddRef().

## XnNodeDestructionHandler

typedef void(* XnNodeDestructionHandler) (XnContext *pContext, const XnChar *strDestroyedNodeName, void *pCookie)

Prototype for the 'Node Destruction' event handler.

Parameters

  [in] | pContext | The context raising the event.
  [in] | strDestroyedNodeName | The name of the destroyed node.
  [in] | pCookie | A user-provided cookie that was given when registering to the event.

## XnNodeHandle

typedef struct XnInternalNodeData* XnNodeHandle

A handle to a production node in the OpenNI context. A value of NULL represents an invalid handle.

## XnNodeInfo

typedef struct XnNodeInfo XnNodeInfo

Information about a single production node.

## XnNodeInfoList

typedef struct XnNodeInfoList XnNodeInfoList

A (linked) list of production node info objects.

## XnNodeInfoListIterator

typedef struct XnNodeInfoListIterator XnNodeInfoListIterator

An iterator in a linked list of production node info objects.

## XnNodeInfoListNode

typedef struct XnNodeInfoListNode XnNodeInfoListNode

A single node in a node info list.

## XnNodeNotifications

typedef struct XnNodeNotifications XnNodeNotifications

An interface that is used for notifications about node events.

## XnNodeQuery

typedef struct XnNodeQuery XnNodeQuery

## XnOutputMetaData

typedef struct XnOutputMetaData XnOutputMetaData

Holds information about a general frame of data.

## XnPixelFormat

typedef enum XnPixelFormat XnPixelFormat

## XnPlane3D

typedef struct XnPlane3D XnPlane3D

A representation of a 3D plane. A plane is described by a point on it and a normal

## XnPlayerInputStreamInterface

typedef struct XnPlayerInputStreamInterface XnPlayerInputStreamInterface

An interface used for communication between OpenNI and a player module. This interface is used by a player module to receive recorded data from OpenNI, which knows where to get them according to one of the values of XnRecordMedium.

## XnPlayerSeekOrigin

typedef enum XnPlayerSeekOrigin XnPlayerSeekOrigin

## XnPoint3D

typedef XnVector3D XnPoint3D

## XnPoseDetectionCallback

typedef void(* XnPoseDetectionCallback) (XnNodeHandle hNode, const XnChar *strPose, XnUserID user, void *pCookie)

Callback for indication that a specific user has entered a pose, or left it.

Parameters

  hNode | [in] A handle to the pose capability that raised this event.
  strPose | [in] The pose that is relevant to the callback.
  user | [in] The id of the user that entered the pose or left it.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnPoseDetectionInProgress

typedef void(* XnPoseDetectionInProgress) (XnNodeHandle hNode, const XnChar *strPose, XnUserID user, XnPoseDetectionStatus poseDetectionError, void *pCookie)

## XnPoseDetectionState

typedef enum XnPoseDetectionState XnPoseDetectionState

Possible pose detection states

## XnPoseDetectionStatus

typedef enum XnPoseDetectionStatus XnPoseDetectionStatus

Possible statuses for pose detection

## XnPowerLineFrequency

typedef enum XnPowerLineFrequency XnPowerLineFrequency

## XnPredefinedProductionNodeType

typedef enum XnPredefinedProductionNodeType XnPredefinedProductionNodeType

Predefined types of production nodes.

## XnProductionNodeDescription

typedef struct XnProductionNodeDescription XnProductionNodeDescription

An exported generator description.

## XnProductionNodeType

typedef XnInt32 XnProductionNodeType

Type of the production node.

## XnRecorderOutputStreamInterface

typedef struct XnRecorderOutputStreamInterface XnRecorderOutputStreamInterface

An interface used for communication between OpenNI and a recorder module. This interface is used by a recorder module to send recorded data to OpenNI, which then knows how to store them according to one of the values of XnRecordMedium.

## XnResolution

typedef enum XnResolution XnResolution

## XnRGB24Pixel

typedef struct XnRGB24Pixel XnRGB24Pixel

Defines the image RGB24 pixel type.

## XnSampleRate

typedef enum XnSampleRate XnSampleRate

## XnSceneMetaData

typedef struct XnSceneMetaData XnSceneMetaData

## XnSkeletonJoint

typedef enum XnSkeletonJoint XnSkeletonJoint

A full list of available joints.

## XnSkeletonJointOrientation

typedef struct XnSkeletonJointOrientation XnSkeletonJointOrientation

Orientation of a specific joint. A joint orientation is described by its actual rotation and the confidence we have in that rotation The first column is the X orientation, where the value increases from left to right. The second column is the Y orientation, where the value increases from bottom to top. The third column is the Z orientation, where the value increases from near to far.

## XnSkeletonJointPosition

typedef struct XnSkeletonJointPosition XnSkeletonJointPosition

Position of a specific joint. A joint position is described by its actual position and the confidence we have in that position.

## XnSkeletonJointTransformation

typedef struct XnSkeletonJointTransformation XnSkeletonJointTransformation

Transformation of a specific joint is its full description: both its position and orientation.

## XnSkeletonProfile

typedef enum XnSkeletonProfile XnSkeletonProfile

A configuration of joints to be used by skeleton (see xnSetSkeletonProfile)

## XnStateChangedHandler

typedef void(* XnStateChangedHandler) (XnNodeHandle hNode, void *pCookie)

Prototype for state change callback function.

Parameters

  hNode | [in] A handle to the node that raised the event.
  pCookie | [in] A user-provided cookie that was given when registering to the event.

## XnSupportedPixelFormats

typedef struct XnSupportedPixelFormats XnSupportedPixelFormats

## XnUInt32XYPair

typedef struct XnUInt32XYPair XnUInt32XYPair

A pair of 32-bit unsigned values.

## XnUserHandler

typedef void(* XnUserHandler) (XnNodeHandle hNode, XnUserID user, void *pCookie)

Callback for a general user-related event. It is used for either creation or destruction of users.

Parameters

  hNode | [in] A handle to the user generator that raised this event.
  user | [in] The id of the user that is relevant to this event.
  pCookie | [in] A user-provided cookie that was given when registering to this event.

## XnUserID

typedef XnUInt32 XnUserID

## XnVector3D

typedef struct XnVector3D XnVector3D

Representation of a vector in 3D space

## XnVersion

typedef struct XnVersion XnVersion

A Version.

## XnWaveOutputMode

typedef struct XnWaveOutputMode XnWaveOutputMode

## XnYUV422DoublePixel

typedef struct XnYUV422DoublePixel XnYUV422DoublePixel

Defines the image YUV422 double-pixel type.

## Enumeration Type Documentation

## XnCalibrationStatus

enum XnCalibrationStatus

Possible statuses for calibration

Enumerator
XN_CALIBRATION_STATUS_OK |
XN_CALIBRATION_STATUS_NO_USER |
XN_CALIBRATION_STATUS_ARM |
XN_CALIBRATION_STATUS_LEG |
XN_CALIBRATION_STATUS_HEAD |
XN_CALIBRATION_STATUS_TORSO |
XN_CALIBRATION_STATUS_TOP_FOV |
XN_CALIBRATION_STATUS_SIDE_FOV |
XN_CALIBRATION_STATUS_POSE |
XN_CALIBRATION_STATUS_MANUAL_ABORT |
XN_CALIBRATION_STATUS_MANUAL_RESET |
XN_CALIBRATION_STATUS_TIMEOUT_FAIL |

## XnDirection

enum XnDirection

Enumerator
XN_DIRECTION_ILLEGAL |
XN_DIRECTION_LEFT |
XN_DIRECTION_RIGHT |
XN_DIRECTION_UP |
XN_DIRECTION_DOWN |
XN_DIRECTION_FORWARD |
XN_DIRECTION_BACKWARD |

## XnPixelFormat

enum XnPixelFormat

Enumerator
XN_PIXEL_FORMAT_RGB24 |
XN_PIXEL_FORMAT_YUV422 |
XN_PIXEL_FORMAT_GRAYSCALE_8_BIT |
XN_PIXEL_FORMAT_GRAYSCALE_16_BIT |
XN_PIXEL_FORMAT_MJPEG |

## XnPlayerSeekOrigin

enum XnPlayerSeekOrigin

Enumerator
XN_PLAYER_SEEK_SET |
XN_PLAYER_SEEK_CUR |
XN_PLAYER_SEEK_END |

## XnPoseDetectionState

enum XnPoseDetectionState

Possible pose detection states

Enumerator
XN_POSE_DETECTION_STATE_IN_POSE |
XN_POSE_DETECTION_STATE_OUT_OF_POSE |
XN_POSE_DETECTION_STATE_UNDEFINED |

## XnPoseDetectionStatus

enum XnPoseDetectionStatus

Possible statuses for pose detection

Enumerator
XN_POSE_DETECTION_STATUS_OK |
XN_POSE_DETECTION_STATUS_NO_USER |
XN_POSE_DETECTION_STATUS_TOP_FOV |
XN_POSE_DETECTION_STATUS_SIDE_FOV |
XN_POSE_DETECTION_STATUS_ERROR |
XN_POSE_DETECTION_STATUS_NO_TRACKING |

## XnPowerLineFrequency

enum XnPowerLineFrequency

Enumerator
XN_POWER_LINE_FREQUENCY_OFF |
XN_POWER_LINE_FREQUENCY_50_HZ |
XN_POWER_LINE_FREQUENCY_60_HZ |

## XnPredefinedProductionNodeType

enum XnPredefinedProductionNodeType

Predefined types of production nodes.

Enumerator
XN_NODE_TYPE_INVALID | An invalid node type
XN_NODE_TYPE_DEVICE | A device node
XN_NODE_TYPE_DEPTH | A depth generator
XN_NODE_TYPE_IMAGE | An image generator
XN_NODE_TYPE_AUDIO | An audio generator
XN_NODE_TYPE_IR | An IR generator
XN_NODE_TYPE_USER | A user generator
XN_NODE_TYPE_RECORDER | A recorder
XN_NODE_TYPE_PLAYER | A player
XN_NODE_TYPE_GESTURE | A gesture generator
XN_NODE_TYPE_SCENE | A scene analyzer
XN_NODE_TYPE_HANDS | A hands generator
XN_NODE_TYPE_CODEC | A Codec
XN_NODE_TYPE_PRODUCTION_NODE | Abstract types
XN_NODE_TYPE_GENERATOR |
XN_NODE_TYPE_MAP_GENERATOR |
XN_NODE_TYPE_SCRIPT |
XN_NODE_TYPE_FIRST_EXTENSION |

## XnResolution

enum XnResolution

Enumerator
XN_RES_CUSTOM |
XN_RES_QQVGA |
XN_RES_CGA |
XN_RES_QVGA |
XN_RES_VGA |
XN_RES_SVGA |
XN_RES_XGA |
XN_RES_720P |
XN_RES_SXGA |
XN_RES_UXGA |
XN_RES_1080P |
XN_RES_QCIF |
XN_RES_240P |
XN_RES_CIF |
XN_RES_WVGA |
XN_RES_480P |
XN_RES_576P |
XN_RES_DV |

## XnSampleRate

enum XnSampleRate

Enumerator
XN_SAMPLE_RATE_8K |
XN_SAMPLE_RATE_11K |
XN_SAMPLE_RATE_12K |
XN_SAMPLE_RATE_16K |
XN_SAMPLE_RATE_22K |
XN_SAMPLE_RATE_24K |
XN_SAMPLE_RATE_32K |
XN_SAMPLE_RATE_44K |
XN_SAMPLE_RATE_48K |

## XnSkeletonJoint

enum XnSkeletonJoint

A full list of available joints.

Enumerator
XN_SKEL_HEAD |
XN_SKEL_NECK |
XN_SKEL_TORSO |
XN_SKEL_WAIST |
XN_SKEL_LEFT_COLLAR |
XN_SKEL_LEFT_SHOULDER |
XN_SKEL_LEFT_ELBOW |
XN_SKEL_LEFT_WRIST |
XN_SKEL_LEFT_HAND |
XN_SKEL_LEFT_FINGERTIP |
XN_SKEL_RIGHT_COLLAR |
XN_SKEL_RIGHT_SHOULDER |
XN_SKEL_RIGHT_ELBOW |
XN_SKEL_RIGHT_WRIST |
XN_SKEL_RIGHT_HAND |
XN_SKEL_RIGHT_FINGERTIP |
XN_SKEL_LEFT_HIP |
XN_SKEL_LEFT_KNEE |
XN_SKEL_LEFT_ANKLE |
XN_SKEL_LEFT_FOOT |
XN_SKEL_RIGHT_HIP |
XN_SKEL_RIGHT_KNEE |
XN_SKEL_RIGHT_ANKLE |
XN_SKEL_RIGHT_FOOT |

## XnSkeletonProfile

enum XnSkeletonProfile

A configuration of joints to be used by skeleton (see xnSetSkeletonProfile)

Enumerator
XN_SKEL_PROFILE_NONE | No joints at all
XN_SKEL_PROFILE_ALL | All joints
XN_SKEL_PROFILE_UPPER | All the joints in the upper body (torso and upwards)
XN_SKEL_PROFILE_LOWER | All the joints in the lower body (torso and downwards)
XN_SKEL_PROFILE_HEAD_HANDS | The head and the hands