XnContext.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002 *                                                                            *
00003 *  OpenNI 1.0 Alpha                                                          *
00004 *  Copyright (C) 2010 PrimeSense Ltd.                                        *
00005 *                                                                            *
00006 *  This file is part of OpenNI.                                              *
00007 *                                                                            *
00008 *  OpenNI is free software: you can redistribute it and/or modify            *
00009 *  it under the terms of the GNU Lesser General Public License as published  *
00010 *  by the Free Software Foundation, either version 3 of the License, or      *
00011 *  (at your option) any later version.                                       *
00012 *                                                                            *
00013 *  OpenNI is distributed in the hope that it will be useful,                 *
00014 *  but WITHOUT ANY WARRANTY; without even the implied warranty of            *
00015 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the              *
00016 *  GNU Lesser General Public License for more details.                       *
00017 *                                                                            *
00018 *  You should have received a copy of the GNU Lesser General Public License  *
00019 *  along with OpenNI. If not, see <http://www.gnu.org/licenses/>.            *
00020 *                                                                            *
00021 *****************************************************************************/
00022 
00023 
00024 
00025 
00026 #ifndef __XN_CONTEXT_H__
00027 #define __XN_CONTEXT_H__
00028 
00082 //---------------------------------------------------------------------------
00083 // Includes
00084 //---------------------------------------------------------------------------
00085 #include <XnTypes.h>
00086 #include <XnQueries.h>
00087 #include <XnPrdNodeInfoList.h>
00088 
00089 //---------------------------------------------------------------------------
00090 // Functions
00091 //---------------------------------------------------------------------------
00092 
00105 XN_C_API XnStatus xnInit(XnContext** ppContext);
00106 
00114 XN_C_API XnStatus xnContextRunXmlScriptFromFile(XnContext* pContext, const XnChar* strFileName, XnEnumerationErrors* pErrors);
00115 
00123 XN_C_API XnStatus xnContextRunXmlScript(XnContext* pContext, const XnChar* xmlScript, XnEnumerationErrors* pErrors);
00124 
00132 XN_C_API XnStatus xnInitFromXmlFile(const XnChar* strFileName, XnContext** ppContext, XnEnumerationErrors* pErrors);
00133 
00140 XN_C_API XnStatus xnContextOpenFileRecording(XnContext* pContext, const XnChar* strFileName);
00141 
00148 XN_C_API void xnShutdown(XnContext* pContext);
00149 
00150 // @}
00151 
00167 XN_C_API XnStatus xnEnumerateProductionTrees(
00168         XnContext* pContext,
00169         XnProductionNodeType Type, 
00170         const XnNodeQuery* pQuery,
00171         XnNodeInfoList** ppTreesList,
00172         XnEnumerationErrors* pErrors
00173         );
00174 
00183 XN_C_API XnStatus xnCreateProductionTree(
00184          XnContext* pContext,
00185          XnNodeInfo* pTree,
00186          XnNodeHandle* phNode
00187          );
00188 
00200 XN_C_API XnStatus xnCreateAnyProductionTree(
00201         XnContext* pContext,
00202         XnProductionNodeType type,
00203         XnNodeQuery* pQuery,
00204         XnNodeHandle* phNode,
00205         XnEnumerationErrors* pErrors
00206         );
00207 
00219 XN_C_API XnStatus xnCreateMockNode(
00220         XnContext* pContext, 
00221         XnProductionNodeType type,
00222         const XnChar* strName,
00223         XnNodeHandle* phNode
00224         );
00225 
00237 XN_C_API XnStatus xnCreateMockNodeBasedOn(
00238         XnContext* pContext,
00239         XnNodeHandle hOriginalNode,
00240         const XnChar* strName,
00241         XnNodeHandle* phMockNode
00242         );
00243 
00249 XN_C_API XnStatus xnRefProductionNode(XnNodeHandle hNode);
00250 
00257 XN_C_API void xnUnrefProductionNode(XnNodeHandle hNode);
00258 
00266 XN_C_API XnStatus xnEnumerateExistingNodes(XnContext* pContext, XnNodeInfoList** ppList);
00267 
00276 XN_C_API XnStatus xnEnumerateExistingNodesByType(XnContext* pContext, XnProductionNodeType type, XnNodeInfoList** ppList);
00277 
00285 XN_C_API XnStatus xnFindExistingNodeByType(
00286         XnContext* pContext,
00287         XnProductionNodeType type,
00288         XnNodeHandle* phNode
00289         );
00290 
00300 XN_C_API XnStatus xnGetNodeHandleByName(
00301         XnContext* pContext,
00302         const XnChar* strInstanceName,
00303         XnNodeHandle* phNode
00304         );
00305 
00306 // @}
00307 
00318 XN_C_API XnStatus xnWaitAndUpdateAll(XnContext* pContext);
00319 
00326 XN_C_API XnStatus xnWaitOneUpdateAll(XnContext* pContext, XnNodeHandle hNode);
00327 
00333 XN_C_API XnStatus xnWaitAnyUpdateAll(XnContext* pContext);
00334 
00341 XN_C_API XnStatus xnWaitNoneUpdateAll(XnContext* pContext);
00342 
00348 XN_C_API XnStatus xnStartGeneratingAll(XnContext* pContext);
00349 
00355 XN_C_API XnStatus xnStopGeneratingAll(XnContext* pContext);
00356 
00364 XN_C_API XnStatus xnSetGlobalMirror(XnContext* pContext, XnBool bMirror);
00365 
00371 XN_C_API XnBool xnGetGlobalMirror(XnContext* pContext);
00372 
00380 XN_C_API XnStatus xnGetGlobalErrorState(XnContext* pContext);
00381 
00390 XN_C_API XnStatus xnRegisterToGlobalErrorStateChange
00391         (XnContext* pContext, XnErrorStateChangedHandler handler,
00392         void* pCookie, XnCallbackHandle* phCallback);
00393 
00400 XN_C_API void xnUnregisterFromGlobalErrorStateChange
00401         (XnContext* pContext, XnCallbackHandle hCallback);
00402 
00404 
00407 #endif // __XN_CONTEXT_H__


nao_openni
Author(s): Bener SUAY
autogenerated on Mon Jan 6 2014 11:27:51