00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __XN_UTILS_H__
00023 #define __XN_UTILS_H__
00024
00032
00033
00034
00035 #include <XnTypes.h>
00036 #include <XnModuleInterface.h>
00037
00038
00039
00040
00041
00052 XN_C_API XnStatus XN_C_DECL xnGetVersion(XnVersion* pVersion);
00053
00055
00066 XN_C_API const XnChar* XN_C_DECL xnProductionNodeTypeToString(XnProductionNodeType Type);
00067
00074 XN_C_API XnStatus XN_C_DECL xnProductionNodeTypeFromString(const XnChar* strType, XnProductionNodeType* pType);
00075
00081 XN_C_API XnBool XN_C_DECL xnIsTypeGenerator(XnProductionNodeType type);
00082
00089 XN_C_API XnBool XN_C_DECL xnIsTypeDerivedFrom(XnProductionNodeType type, XnProductionNodeType base);
00090
00092
00103 XN_C_API const XnChar* XN_C_DECL xnPixelFormatToString(XnPixelFormat format);
00104
00111 XN_C_API XnStatus XN_C_DECL xnPixelFormatFromString(const XnChar* strName, XnPixelFormat* pFormat);
00112
00118 XN_C_API XnUInt32 XN_C_DECL xnGetBytesPerPixelForPixelFormat(XnPixelFormat format);
00119
00121
00132 XN_C_API XnUInt32 XN_C_DECL xnResolutionGetXRes(XnResolution resolution);
00133
00139 XN_C_API XnUInt32 XN_C_DECL xnResolutionGetYRes(XnResolution resolution);
00140
00147 XN_C_API XnResolution XN_C_DECL xnResolutionGetFromXYRes(XnUInt32 xRes, XnUInt32 yRes);
00148
00154 XN_C_API XnResolution XN_C_DECL xnResolutionGetFromName(const XnChar* strName);
00155
00161 XN_C_API const XnChar* XN_C_DECL xnResolutionGetName(XnResolution resolution);
00162
00164
00178 XN_C_API XnInt32 XN_C_DECL xnVersionCompare(const XnVersion* pVersion1, const XnVersion* pVersion2);
00179
00180 XN_C_API XnStatus XN_C_DECL xnVersionToString(const XnVersion* pVersion, XnChar* csResult, XnUInt32 nSize);
00181
00183
00189 XN_C_API XnStatus XN_C_DECL xnProductionNodeDescriptionToString(const XnProductionNodeDescription* pDescription, XnChar* csResult, XnUInt32 nSize);
00190
00192
00198 XN_C_API XnPoint3D XN_C_DECL xnCreatePoint3D(XnFloat x, XnFloat y, XnFloat z);
00199 XN_C_API XnPlane3D XN_C_DECL xnCreatePlane3D(XnPoint3D ptPoint, XnVector3D vNormal);
00200
00202
00208 XN_C_API XnStatus XN_C_DECL xnRegisterModule(const XnChar* strModule, const XnChar* strConfigDir);
00209 XN_C_API XnStatus XN_C_DECL xnUnregisterModule(const XnChar* strModule);
00210 XN_C_API XnStatus XN_C_DECL xnPrintRegisteredModules();
00211
00213
00219 XN_C_API XnStatus XN_C_DECL xnRegisterGlobalLicense(XnLicense* pLicense);
00220 XN_C_API XnStatus XN_C_DECL xnUnregisterGlobalLicense(XnLicense* pLicense);
00221 XN_C_API XnStatus XN_C_DECL xnPrintRegisteredLicenses();
00222
00224
00235 XN_C_API XnOutputMetaData* XN_C_DECL xnAllocateOutputMetaData();
00241 XN_C_API void XN_C_DECL xnFreeOutputMetaData(const XnOutputMetaData* pMetaData);
00248 XN_C_API XnStatus XN_C_DECL xnCopyOutputMetaData(XnOutputMetaData* pDestination, const XnOutputMetaData* pSource);
00249
00255 XN_C_API XnMapMetaData* XN_C_DECL xnAllocateMapMetaData();
00261 XN_C_API void XN_C_DECL xnFreeMapMetaData(const XnMapMetaData* pMetaData);
00268 XN_C_API XnStatus XN_C_DECL xnCopyMapMetaData(XnMapMetaData* pDestination, const XnMapMetaData* pSource);
00269
00275 XN_C_API XnDepthMetaData* XN_C_DECL xnAllocateDepthMetaData();
00281 XN_C_API void XN_C_DECL xnFreeDepthMetaData(const XnDepthMetaData* pMetaData);
00289 XN_C_API XnStatus XN_C_DECL xnCopyDepthMetaData(XnDepthMetaData* pDestination, const XnDepthMetaData* pSource);
00290
00296 XN_C_API XnImageMetaData* XN_C_DECL xnAllocateImageMetaData();
00302 XN_C_API void XN_C_DECL xnFreeImageMetaData(const XnImageMetaData* pMetaData);
00310 XN_C_API XnStatus XN_C_DECL xnCopyImageMetaData(XnImageMetaData* pDestination, const XnImageMetaData* pSource);
00311
00317 XN_C_API XnIRMetaData* XN_C_DECL xnAllocateIRMetaData();
00323 XN_C_API void XN_C_DECL xnFreeIRMetaData(const XnIRMetaData* pMetaData);
00331 XN_C_API XnStatus XN_C_DECL xnCopyIRMetaData(XnIRMetaData* pDestination, const XnIRMetaData* pSource);
00332
00338 XN_C_API XnAudioMetaData* XN_C_DECL xnAllocateAudioMetaData();
00344 XN_C_API void XN_C_DECL xnFreeAudioMetaData(const XnAudioMetaData* pMetaData);
00352 XN_C_API XnStatus XN_C_DECL xnCopyAudioMetaData(XnAudioMetaData* pDestination, const XnAudioMetaData* pSource);
00353
00359 XN_C_API XnSceneMetaData* XN_C_DECL xnAllocateSceneMetaData();
00365 XN_C_API void XN_C_DECL xnFreeSceneMetaData(const XnSceneMetaData* pMetaData);
00373 XN_C_API XnStatus XN_C_DECL xnCopySceneMetaData(XnSceneMetaData* pDestination, const XnSceneMetaData* pSource);
00374
00376
00394 XN_C_API XnStatus XN_C_DECL xnAutoEnumerateOverSingleInput(XnContext* pContext, XnNodeInfoList* pList, XnProductionNodeDescription* pDescription, const XnChar* strCreationInfo, XnProductionNodeType InputType, XnEnumerationErrors* pErrors, XnNodeQuery* pQuery);
00395
00403 XN_C_API XnStatus XN_C_DECL xnRegisterExtensionNode(const XnChar* strTypeName, XnProductionNodeType baseType, XnProductionNodeType* pTypeID);
00404
00410 XN_C_API XnModuleNodeHandle XN_C_DECL xnGetModuleNodeHandle(XnNodeHandle hNode);
00411
00412 #if !XN_PLATFORM_SUPPORTS_DYNAMIC_LIBS
00413
00420 XN_C_API XnStatus XN_C_DECL xnRegisterModuleWithOpenNI(XnOpenNIModuleInterface* pInterface, const XnChar* strConfigDir, const XnChar* strName);
00421 #endif
00422
00424
00427 #endif // __XN_UTILS_H__