|
| ProductionNode (XnNodeHandle hNode=NULL) |
|
| ProductionNode (const NodeWrapper &other) |
|
NodeInfo | GetInfo () const |
|
XnStatus | AddNeededNode (ProductionNode &needed) |
|
XnStatus | RemoveNeededNode (ProductionNode &needed) |
|
void | GetContext (Context &context) const |
|
Context | GetContext () const |
|
XnBool | IsCapabilitySupported (const XnChar *strCapabilityName) const |
|
XnStatus | SetIntProperty (const XnChar *strName, XnUInt64 nValue) |
|
XnStatus | SetRealProperty (const XnChar *strName, XnDouble dValue) |
|
XnStatus | SetStringProperty (const XnChar *strName, const XnChar *strValue) |
|
XnStatus | SetGeneralProperty (const XnChar *strName, XnUInt32 nBufferSize, const void *pBuffer) |
|
XnStatus | GetIntProperty (const XnChar *strName, XnUInt64 &nValue) const |
|
XnStatus | GetRealProperty (const XnChar *strName, XnDouble &dValue) const |
|
XnStatus | GetStringProperty (const XnChar *strName, XnChar *csValue, XnUInt32 nBufSize) const |
|
XnStatus | GetGeneralProperty (const XnChar *strName, XnUInt32 nBufferSize, void *pBuffer) const |
|
XnStatus | LockForChanges (XnLockHandle *phLock) |
|
void | UnlockForChanges (XnLockHandle hLock) |
|
XnStatus | LockedNodeStartChanges (XnLockHandle hLock) |
|
void | LockedNodeEndChanges (XnLockHandle hLock) |
|
const ErrorStateCapability | GetErrorStateCap () const |
|
ErrorStateCapability | GetErrorStateCap () |
|
GeneralIntCapability | GetGeneralIntCap (const XnChar *strCapability) |
|
| NodeWrapper (XnNodeHandle hNode) |
|
| NodeWrapper (const NodeWrapper &other) |
|
NodeWrapper & | operator= (const NodeWrapper &other) |
|
| ~NodeWrapper () |
|
| operator XnNodeHandle () const |
|
XnNodeHandle | GetHandle () const |
|
XnBool | operator== (const NodeWrapper &other) |
|
XnBool | operator!= (const NodeWrapper &other) |
|
XnBool | IsValid () const |
|
const XnChar * | GetName () const |
|
XnStatus | AddRef () |
|
void | Release () |
|
void | SetHandle (XnNodeHandle hNode) |
|
void | TakeOwnership (XnNodeHandle hNode) |
|
Purpose: The ProductionNode class is a base class for all production nodes and generator nodes. As such, the ProductionNode class is the fundamental base class of the entire OpenNI interface for building and accessing the production graph.
Usage: Base class for all production nodes; not usually instantiated.
Class Overview:
The OpenNI Production Graph is comprised entirely of production nodes of one type or another. The ProductionNode class itself exposes a very limited functionality set. This is the most basic and common functionality set of all the nodes in the graph.
All types of core generator nodes are derived from this ProductionNode class, for example, the xn::DepthGenerator node and the xn::Device node. Each node type has its own set of methods that it supports.
Two of the most important methods provided by the ProductionNode class are IsCapabilitySupported() and GetContext(), both described further below.
Capabilities Mechanism:
In addition to being the base class for all core generator nodes, the ProductionNode class also provides key support for the OpenNI capabilities mechanism. OpenNI defines core functionality which is always supported by all node implementations of a specific node type. Additional optional functionality is also defined by OpenNI and exposed as "capabilities". The ProductionNode class provides the IsCapabilitySupported() method to check if this specific implementation supports a certain capability.
For a comprehensive overview to the Capabilities mechanism see Capabilities Mechanism.