| 1434 | } |
| 1435 | |
| 1436 | XnStatus xnCreatePrivateData(XnInternalNodeData* pNodeData) |
| 1437 | { |
| 1438 | XnStatus nRetVal = XN_STATUS_OK; |
| 1439 | |
| 1440 | if (pNodeData->pTypeHierarchy->IsSet(XN_NODE_TYPE_RECORDER)) |
| 1441 | { |
| 1442 | xn::RecorderImpl *pRecorderImpl = NULL; |
| 1443 | XN_VALIDATE_NEW(pRecorderImpl, xn::RecorderImpl); |
| 1444 | nRetVal = pRecorderImpl->Init(pNodeData); |
| 1445 | if (nRetVal != XN_STATUS_OK) |
| 1446 | { |
| 1447 | XN_DELETE(pRecorderImpl); |
| 1448 | return nRetVal; |
| 1449 | } |
| 1450 | |
| 1451 | pNodeData->pPrivateData = pRecorderImpl; |
| 1452 | } |
| 1453 | else if (pNodeData->pTypeHierarchy->IsSet(XN_NODE_TYPE_PLAYER)) |
| 1454 | { |
| 1455 | xn::PlayerImpl *pPlayerImpl = NULL; |
| 1456 | XN_VALIDATE_NEW(pPlayerImpl, xn::PlayerImpl); |
| 1457 | nRetVal = pPlayerImpl->Init(pNodeData); |
| 1458 | if (nRetVal != XN_STATUS_OK) |
| 1459 | { |
| 1460 | XN_DELETE(pPlayerImpl); |
| 1461 | return nRetVal; |
| 1462 | } |
| 1463 | pNodeData->pPrivateData = pPlayerImpl; |
| 1464 | } |
| 1465 | else if (pNodeData->pTypeHierarchy->IsSet(XN_NODE_TYPE_DEPTH)) |
| 1466 | { |
| 1467 | xn::DepthPrivateData* pDepthPrivateData = NULL; |
| 1468 | XN_VALIDATE_NEW(pDepthPrivateData, xn::DepthPrivateData); |
| 1469 | nRetVal = pDepthPrivateData->Init(pNodeData); |
| 1470 | if (nRetVal != XN_STATUS_OK) |
| 1471 | { |
| 1472 | XN_DELETE(pDepthPrivateData); |
| 1473 | return nRetVal; |
| 1474 | } |
| 1475 | pNodeData->pPrivateData = pDepthPrivateData; |
| 1476 | } |
| 1477 | else if(pNodeData->pTypeHierarchy->IsSet(XN_NODE_TYPE_USER)) |
| 1478 | { |
| 1479 | xn::PosePrivateData * pPosePrivateData=NULL; |
| 1480 | |
| 1481 | if(xnIsCapabilitySupported(pNodeData,XN_CAPABILITY_POSE_DETECTION)) |
| 1482 | { |
| 1483 | XN_VALIDATE_NEW(pPosePrivateData, xn::PosePrivateData); |
| 1484 | nRetVal = pPosePrivateData->Init(pNodeData); |
| 1485 | if (nRetVal != XN_STATUS_OK) |
| 1486 | { |
| 1487 | XN_DELETE(pPosePrivateData); |
| 1488 | return nRetVal; |
| 1489 | } |
| 1490 | pNodeData->pPrivateData = pPosePrivateData; |
| 1491 | } |
| 1492 | |
| 1493 | } |
no test coverage detected