OpenNI 1.0.0
Modules | Functions
Production Node
Production Nodes Functionality

Modules

 Error State Capability

Functions

XN_C_API XnNodeInfoxnGetNodeInfo (XnNodeHandle hNode)
XN_C_API const XnChar * xnGetNodeName (XnNodeHandle hNode)
XN_C_API XnContextxnGetContextFromNodeHandle (XnNodeHandle hNode)
XN_C_API XnBool xnIsCapabilitySupported (XnNodeHandle hInstance, const XnChar *strCapabilityName)
XN_C_API XnStatus xnSetIntProperty (XnNodeHandle hInstance, const XnChar *strName, XnUInt64 nValue)
XN_C_API XnStatus xnSetRealProperty (XnNodeHandle hInstance, const XnChar *strName, XnDouble dValue)
XN_C_API XnStatus xnSetStringProperty (XnNodeHandle hInstance, const XnChar *strName, const XnChar *strValue)
XN_C_API XnStatus xnSetGeneralProperty (XnNodeHandle hInstance, const XnChar *strName, XnUInt32 nBufferSize, const void *pBuffer)
XN_C_API XnStatus xnGetIntProperty (XnNodeHandle hInstance, const XnChar *strName, XnUInt64 *pnValue)
XN_C_API XnStatus xnGetRealProperty (XnNodeHandle hInstance, const XnChar *strName, XnDouble *pdValue)
XN_C_API XnStatus xnGetStringProperty (XnNodeHandle hInstance, const XnChar *strName, XnChar *csValue, XnUInt32 nBufSize)
XN_C_API XnStatus xnGetGeneralProperty (XnNodeHandle hInstance, const XnChar *strName, XnUInt32 nBufferSize, void *pBuffer)
XN_C_API XnStatus xnLockNodeForChanges (XnNodeHandle hInstance, XnLockHandle *phLock)
XN_C_API XnStatus xnUnlockNodeForChanges (XnNodeHandle hInstance, XnLockHandle hLock)
XN_C_API XnStatus xnLockedNodeStartChanges (XnNodeHandle hInstance, XnLockHandle hLock)
XN_C_API XnStatus xnLockedNodeEndChanges (XnNodeHandle hInstance, XnLockHandle hLock)
XN_C_API XnStatus xnAddNeededNode (XnNodeHandle hInstance, XnNodeHandle hNeededNode)
XN_C_API XnStatus xnRemoveNeededNode (XnNodeHandle hInstance, XnNodeHandle hNeededNode)

Detailed Description

A production node is the most basic unit of processing in OpenNI. The following functions can be executed for every node in an OpenNI context.


Function Documentation

XN_C_API XnStatus xnAddNeededNode ( XnNodeHandle  hInstance,
XnNodeHandle  hNeededNode 
)

Adds another node to the list of needed nodes for this node.

Parameters:
hInstance[in] A handle to the node.
hNeededNode[in] The node that is needed by hInstance.
XN_C_API XnContext* xnGetContextFromNodeHandle ( XnNodeHandle  hNode)

Gets the context a node belongs to.

Parameters:
hNode[in] A handle to the node.
XN_C_API XnStatus xnGetGeneralProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnUInt32  nBufferSize,
void *  pBuffer 
)

Gets a buffer property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
nBufferSize[in] The size of the buffer passed, in bytes.
pBuffer[in] The data buffer to be filled.
XN_C_API XnStatus xnGetIntProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnUInt64 *  pnValue 
)

Gets an integer property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
pnValue[out] Current value
XN_C_API XnNodeInfo* xnGetNodeInfo ( XnNodeHandle  hNode)

Gets information about a specific node, like its description, and dependent nodes.

Parameters:
hNode[in] A handle to the node.
XN_C_API const XnChar* xnGetNodeName ( XnNodeHandle  hNode)

Gets the instance name of a node by its handle.

Parameters:
hNode[in] A handle to the node.
XN_C_API XnStatus xnGetRealProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnDouble *  pdValue 
)

Gets a real property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
pdValue[out] Current value
XN_C_API XnStatus xnGetStringProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnChar *  csValue,
XnUInt32  nBufSize 
)

Gets a string property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
csValue[out] Current value
nBufSize[in] The size of the csValue buffer.
XN_C_API XnBool xnIsCapabilitySupported ( XnNodeHandle  hInstance,
const XnChar *  strCapabilityName 
)

Checks if a production node supports specific capability.

Parameters:
hInstance[in] A handle to the instance to be queried.
strCapabilityName[in] The name of the capability to check.
XN_C_API XnStatus xnLockedNodeEndChanges ( XnNodeHandle  hInstance,
XnLockHandle  hLock 
)

Ends changes request on a locked node.

Parameters:
hInstance[in] A handle to the node.
hLock[in] The handle of the lock, returned from xnLockNodeForChanges().
XN_C_API XnStatus xnLockedNodeStartChanges ( XnNodeHandle  hInstance,
XnLockHandle  hLock 
)

Start changes request on a locked node, without releasing that lock.

It allows "set" operations from the same context (same thread for that matter) until a call is made to xnLockedNodeEndChanges().

Parameters:
hInstance[in] A handle to the node.
hLock[in] The handle of the lock, returned from xnLockNodeForChanges().
XN_C_API XnStatus xnLockNodeForChanges ( XnNodeHandle  hInstance,
XnLockHandle phLock 
)

Locks a node, not allowing any changes (any "set" function).

Parameters:
hInstance[in] A handle to the node.
phLock[out] A handle of the lock, that can be used to manage the lock.
XN_C_API XnStatus xnRemoveNeededNode ( XnNodeHandle  hInstance,
XnNodeHandle  hNeededNode 
)

Removes a needed node from the list of needed nodes.

If this node is no longer needed by any other node, and xnRefProductionNode() was not called on it, it will be destroyed.

Parameters:
hInstance[in] A handle to the node.
hNeededNode[in] The node to be removed from the list.
XN_C_API XnStatus xnSetGeneralProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnUInt32  nBufferSize,
const void *  pBuffer 
)

Sets a buffer property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
nBufferSize[in] The size of the buffer passed, in bytes.
pBuffer[in] The data buffer.
XN_C_API XnStatus xnSetIntProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnUInt64  nValue 
)

Sets an integer property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
nValue[in] New value
XN_C_API XnStatus xnSetRealProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
XnDouble  dValue 
)

Sets a real property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
dValue[in] New value
XN_C_API XnStatus xnSetStringProperty ( XnNodeHandle  hInstance,
const XnChar *  strName,
const XnChar *  strValue 
)

Sets a string property.

Parameters:
hInstance[in] A handle to the instance.
strName[in] Property name
strValue[in] New value
XN_C_API XnStatus xnUnlockNodeForChanges ( XnNodeHandle  hInstance,
XnLockHandle  hLock 
)

Unlocks a previously locked node.

Parameters:
hInstance[in] A handle to the node.
hLock[in] The handle of the lock, returned from xnLockNodeForChanges().