| 504 | } |
| 505 | |
| 506 | XnStatus XnModuleLoader::LoadSpecificInterface(XnVersion& moduleOpenNIVersion, XnProductionNodeType Type, XnModuleExportedProductionNodeInterface* pExportedInterface, XnProductionNodeInterfaceContainer*& pInterfaceContainer) |
| 507 | { |
| 508 | XnStatus nRetVal = XN_STATUS_OK; |
| 509 | |
| 510 | const XnBitSet* pHierarchy; |
| 511 | nRetVal = TypeManager::GetInstance().GetTypeHierarchy(Type, pHierarchy); |
| 512 | XN_IS_STATUS_OK(nRetVal); |
| 513 | |
| 514 | // start with concrete types |
| 515 | if (pHierarchy->IsSet(XN_NODE_TYPE_DEVICE)) |
| 516 | { |
| 517 | nRetVal = LoadDeviceNode(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 518 | XN_IS_STATUS_OK(nRetVal); |
| 519 | } |
| 520 | else if (pHierarchy->IsSet(XN_NODE_TYPE_DEPTH)) |
| 521 | { |
| 522 | nRetVal = LoadDepthGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 523 | XN_IS_STATUS_OK(nRetVal); |
| 524 | } |
| 525 | else if (pHierarchy->IsSet(XN_NODE_TYPE_IMAGE)) |
| 526 | { |
| 527 | nRetVal = LoadImageGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 528 | XN_IS_STATUS_OK(nRetVal); |
| 529 | } |
| 530 | else if (pHierarchy->IsSet(XN_NODE_TYPE_IR)) |
| 531 | { |
| 532 | nRetVal = LoadIRGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 533 | XN_IS_STATUS_OK(nRetVal); |
| 534 | } |
| 535 | else if (pHierarchy->IsSet(XN_NODE_TYPE_GESTURE)) |
| 536 | { |
| 537 | nRetVal = LoadGestureGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 538 | XN_IS_STATUS_OK(nRetVal); |
| 539 | } |
| 540 | else if (pHierarchy->IsSet(XN_NODE_TYPE_USER)) |
| 541 | { |
| 542 | nRetVal = LoadUserGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 543 | XN_IS_STATUS_OK(nRetVal); |
| 544 | } |
| 545 | else if (pHierarchy->IsSet(XN_NODE_TYPE_HANDS)) |
| 546 | { |
| 547 | nRetVal = LoadHandsGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 548 | XN_IS_STATUS_OK(nRetVal); |
| 549 | } |
| 550 | else if (pHierarchy->IsSet(XN_NODE_TYPE_SCENE)) |
| 551 | { |
| 552 | nRetVal = LoadSceneAnalyzer(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 553 | XN_IS_STATUS_OK(nRetVal); |
| 554 | } |
| 555 | else if (pHierarchy->IsSet(XN_NODE_TYPE_AUDIO)) |
| 556 | { |
| 557 | nRetVal = LoadAudioGenerator(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 558 | XN_IS_STATUS_OK(nRetVal); |
| 559 | } |
| 560 | else if (pHierarchy->IsSet(XN_NODE_TYPE_RECORDER)) |
| 561 | { |
| 562 | nRetVal = LoadRecorder(moduleOpenNIVersion, pExportedInterface, pInterfaceContainer); |
| 563 | XN_IS_STATUS_OK(nRetVal); |
nothing calls this directly
no test coverage detected