MCPcopy Create free account
hub / github.com/OpenNI/OpenNI / xnRegisterUserCallbacks

Function xnRegisterUserCallbacks

Source/OpenNI/XnOpenNI.cpp:5435–5459  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5433}
5434
5435XN_C_API XnStatus xnRegisterUserCallbacks(XnNodeHandle hInstance, XnUserHandler NewUserCB, XnUserHandler LostUserCB, void* pCookie, XnCallbackHandle* phCallback)
5436{
5437 XN_VALIDATE_INTERFACE_TYPE(hInstance, XN_NODE_TYPE_USER);
5438 XN_VALIDATE_OUTPUT_PTR(phCallback);
5439 XnUserGeneratorInterfaceContainer* pInterface = (XnUserGeneratorInterfaceContainer*)hInstance->pModuleInstance->pLoaded->pInterface;
5440 XnModuleNodeHandle hModuleNode = hInstance->pModuleInstance->hNode;
5441
5442 UserCookie* pUserCookie;
5443 XN_VALIDATE_ALLOC(pUserCookie, UserCookie);
5444 pUserCookie->newHandler = NewUserCB;
5445 pUserCookie->lostHandler = LostUserCB;
5446 pUserCookie->hNode = hInstance;
5447 pUserCookie->pUserCookie = pCookie;
5448
5449 XnStatus nRetVal = pInterface->User.RegisterUserCallbacks(hModuleNode, xnNewUserCallback, xnLostUserCallback, pUserCookie, &pUserCookie->hCallback);
5450 if (nRetVal != XN_STATUS_OK)
5451 {
5452 xnOSFree(pUserCookie);
5453 return (nRetVal);
5454 }
5455
5456 *phCallback = pUserCookie;
5457
5458 return (XN_STATUS_OK);
5459}
5460
5461XN_C_API void xnUnregisterUserCallbacks(XnNodeHandle hInstance, XnCallbackHandle hCallback)
5462{

Callers 4

RegisterUserCallbacksMethod · 0.85
RegisterNewUserCallbackFunction · 0.85
RegisterLostUserCallbackFunction · 0.85
InitMethod · 0.85

Calls 2

RegisterUserCallbacksMethod · 0.80
xnOSFreeFunction · 0.50

Tested by

no test coverage detected