本文整理汇总了C++中IAAFMob::CountKLVData方法的典型用法代码示例。如果您正苦于以下问题:C++ IAAFMob::CountKLVData方法的具体用法?C++ IAAFMob::CountKLVData怎么用?C++ IAAFMob::CountKLVData使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IAAFMob
的用法示例。
在下文中一共展示了IAAFMob::CountKLVData方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ReadAAFFile
//.........这里部分代码省略.........
// reinitialize values
timecode.startFrame = 0;
timecode.drop = kAAFTcDrop;
timecode.fps = 24;
// According to IDL this should search for the slot containing the timecode segment
checkResult(aMob->OffsetToMobTimecode(NULL, &offset, &timecode));
checkExpression(timecode.startFrame == (TCstartFrame + offset), AAFRESULT_TEST_FAILED);
checkExpression(timecode.drop == TCdrop, AAFRESULT_TEST_FAILED);
checkExpression(timecode.fps == TCfps, AAFRESULT_TEST_FAILED);
pSegment->Release();
pSegment = NULL;
slot->Release();
slot = NULL;
// Pass in a segment that is not a timecode and make sure it returns correct hr
checkResult(aMob->LookupSlot(1, &slot));
checkResult(slot->GetSegment(&pSegment));
checkExpression(aMob->OffsetToMobTimecode(pSegment, &offset, &timecode) == AAFRESULT_TIMECODE_NOT_FOUND,
AAFRESULT_TEST_FAILED);
pSegment->Release();
pSegment = NULL;
slot->Release();
slot = NULL;
// GetKLVData
checkResult(pDictionary->LookupTypeDef (kAAFTypeID_UInt8Array, &pBaseType));
checkResult(pDictionary->RegisterKLVDataKey(TEST_KLV, pBaseType));
pBaseType->Release();
pBaseType = NULL;
checkResult(aMob->CountKLVData(&numFound));
checkExpression(numFound == 2, AAFRESULT_TEST_FAILED);
checkResult(aMob->GetKLVData(&klvEnum));
checkResult(klvEnum->NextOne(&pKLVData));
checkResult(pKLVData->GetValueBufLen(&bufLen));
checkExpression(sizeof(KLVfrowney) == bufLen, AAFRESULT_TEST_FAILED);
checkResult(pKLVData->GetValue( sizeof(value), (unsigned char *)value, &bytesRead));
checkExpression(memcmp(value, KLVfrowney, sizeof(KLVfrowney)) == 0, AAFRESULT_TEST_FAILED);
checkResult(pKLVData->GetKey(&testKey));
checkExpression(memcmp(&testKey, &TEST_KLV, sizeof(aafUID_t)) == 0, AAFRESULT_TEST_FAILED);
pKLVData->Release();
pKLVData = NULL;
checkResult(klvEnum->NextOne(&pKLVData));
checkResult(pKLVData->GetValueBufLen(&bufLen));
checkExpression(sizeof(KLVsmiley) == bufLen, AAFRESULT_TEST_FAILED);
checkResult(pKLVData->GetValue( sizeof(value), (unsigned char *)value, &bytesRead));
checkExpression(memcmp(value, KLVsmiley, sizeof(KLVsmiley)) == 0, AAFRESULT_TEST_FAILED);
checkResult(pKLVData->GetKey(&testKey));
checkExpression(memcmp(&testKey, &TEST_KLV, sizeof(aafUID_t)) == 0, AAFRESULT_TEST_FAILED);
pKLVData->Release();
pKLVData = NULL;
klvEnum->Release();
klvEnum = NULL;
checkExpression(aMob->GetKLVData(NULL) == AAFRESULT_NULL_PARAM,
AAFRESULT_TEST_FAILED);
// Check the comments
checkResult(aMob->GetComments(&enumTaggedVal));
示例2: CreateAAFFile
//.........这里部分代码省略.........
checkResult(event->QueryInterface (IID_IAAFSegment, (void **)&seg));
checkResult(pMobInterface2->AppendNewEventSlot ( EventeditRate,
seg,
9,
slotNames[8],
0,
&newEventSlot));
if(newEventSlot)
newEventSlot->Release();
newEventSlot = NULL;
seg->Release();
seg = NULL;
pComponent->Release();
pComponent = NULL;
event->Release();
event = NULL;
pcdEventConcrete->Release();
pcdEventConcrete = NULL;
pcdEvent->Release();
pcdEvent = NULL;
pcdEventMeta->Release();
pcdEventMeta = NULL;
// Try CountKLVData before any have been attached
numFound = 1;
checkResult(pMob->CountKLVData(&numFound));
checkExpression(numFound == 0, AAFRESULT_TEST_FAILED);
checkExpression(pMob->CountKLVData(NULL) == AAFRESULT_NULL_PARAM,
AAFRESULT_TEST_FAILED);
// AppendKLVData - attach some objects
checkResult(pDictionary->LookupTypeDef (kAAFTypeID_UInt8Array, &pBaseType));
checkResult(pDictionary->RegisterKLVDataKey(TEST_KLV, pBaseType));
pBaseType->Release();
pBaseType = NULL;
checkExpression(pMob->AppendKLVData(NULL) == AAFRESULT_NULL_PARAM,
AAFRESULT_TEST_FAILED);
checkResult(defs.cdKLVData()->
CreateInstance(IID_IAAFKLVData,
(IUnknown **)&pKLVData));
checkResult(pKLVData->Initialize(TEST_KLV, sizeof(KLVfrowney),
(unsigned char *)KLVfrowney));
checkResult(pMob->AppendKLVData(pKLVData));
pKLVData->Release();
pKLVData = NULL;
checkResult(defs.cdKLVData()->
CreateInstance(IID_IAAFKLVData,
(IUnknown **)&pKLVData));
checkResult(pKLVData->Initialize(TEST_KLV, sizeof(KLVfrowney),
(unsigned char *)KLVfrowney));
checkResult(pMob->AppendKLVData(pKLVData));
checkExpression(pMob->AppendKLVData(pKLVData) == AAFRESULT_OBJECT_ALREADY_ATTACHED,
AAFRESULT_TEST_FAILED);
// RemoveKLVData - remove object #2
checkExpression(pMob->RemoveKLVData(NULL) == AAFRESULT_NULL_PARAM,
AAFRESULT_TEST_FAILED);