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

Function seekFrame

Samples/NiViewer/Device.cpp:448–500  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

446}
447
448void seekFrame(int nDiff)
449{
450 XnStatus nRetVal = XN_STATUS_OK;
451 if (isPlayerOn())
452 {
453 const XnChar* strNodeName = NULL;
454 if (g_pPrimary != NULL)
455 {
456 strNodeName = g_pPrimary->GetName();
457 }
458 else if (g_Depth.IsValid())
459 {
460 strNodeName = g_Depth.GetName();
461 }
462 else if (g_Image.IsValid())
463 {
464 strNodeName = g_Image.GetName();
465 }
466 else if (g_IR.IsValid())
467 {
468 strNodeName = g_IR.GetName();
469 }
470 else if (g_Audio.IsValid())
471 {
472 strNodeName = g_Audio.GetName();
473 }
474
475 nRetVal = g_Player.SeekToFrame(strNodeName, nDiff, XN_PLAYER_SEEK_CUR);
476 if (nRetVal != XN_STATUS_OK)
477 {
478 displayMessage("Failed to seek: %s", xnGetStatusString(nRetVal));
479 return;
480 }
481
482 XnUInt32 nFrame = 0;
483 XnUInt32 nNumFrames = 0;
484 nRetVal = g_Player.TellFrame(strNodeName, nFrame);
485 if (nRetVal != XN_STATUS_OK)
486 {
487 displayMessage("Failed to tell frame: %s", xnGetStatusString(nRetVal));
488 return;
489 }
490
491 nRetVal = g_Player.GetNumFrames(strNodeName, nNumFrames);
492 if (nRetVal != XN_STATUS_OK)
493 {
494 displayMessage("Failed to get number of frames: %s", xnGetStatusString(nRetVal));
495 return;
496 }
497
498 displayMessage("Seeked %s to frame %u/%u", strNodeName, nFrame, nNumFrames);
499 }
500}
501
502bool isDepthOn()
503{

Callers 1

seekFunction · 0.85

Calls 8

isPlayerOnFunction · 0.85
displayMessageFunction · 0.85
xnGetStatusStringFunction · 0.85
GetNameMethod · 0.80
IsValidMethod · 0.45
SeekToFrameMethod · 0.45
TellFrameMethod · 0.45
GetNumFramesMethod · 0.45

Tested by

no test coverage detected