|
@@ -13,7 +13,7 @@
|
13
|
13
|
|
14
|
14
|
typedef enum
|
15
|
15
|
{
|
16
|
|
-kInvalidSrId,
|
|
16
|
+ kInvalidSrId,
|
17
|
17
|
kMidiSrId,
|
18
|
18
|
kAudioSrId
|
19
|
19
|
} cmSrTypeId_t;
|
|
@@ -66,7 +66,7 @@ typedef struct cmSr_str
|
66
|
66
|
} cmSr_t;
|
67
|
67
|
|
68
|
68
|
|
69
|
|
-
|
|
69
|
+cmSyncRecdH_t cmSyncRecdNullHandle = cmSTATIC_NULL_HANDLE;
|
70
|
70
|
|
71
|
71
|
cmSr_t* _cmSrHtoP( cmSyncRecdH_t h )
|
72
|
72
|
{
|
|
@@ -435,3 +435,52 @@ cmSrRC_t cmSyncRecdAudioWrite( cmSyncRecdH_t h, const cmTimeSpec_t* timestamp, u
|
435
|
435
|
errLabel:
|
436
|
436
|
return rc;
|
437
|
437
|
}
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+cmSrRC_t cmSyncRecdPrint( cmSyncRecdH_t h )
|
|
441
|
+{
|
|
442
|
+ cmSrRC_t rc = kOkSrRC;
|
|
443
|
+ cmSr_t* p = _cmSrHtoP(h);
|
|
444
|
+
|
|
445
|
+ unsigned i;
|
|
446
|
+
|
|
447
|
+ for(i=0; i<p->cn; ++i)
|
|
448
|
+ {
|
|
449
|
+ cmSrRecd_t* r = p->cache + i;
|
|
450
|
+ cmRptPrintf(p->err.rpt,"0x%x %3i %3i %ld %5.3f %ld %5.3f",r->u.m.status,r->u.m.d0,r->u.m.d1,r->u.m.timestamp.tv_sec,r->u.m.timestamp.tv_nsec/1000000000.0,p->map[i].timestamp.tv_sec,p->map[i].timestamp.tv_nsec/1000000000.0);
|
|
451
|
+ }
|
|
452
|
+
|
|
453
|
+ return rc;
|
|
454
|
+}
|
|
455
|
+
|
|
456
|
+cmSrRC_t cmSyncRecdTest( cmCtx_t* ctx )
|
|
457
|
+{
|
|
458
|
+ enum
|
|
459
|
+ {
|
|
460
|
+ kOkTestRC,
|
|
461
|
+ kTestFailRC,
|
|
462
|
+ };
|
|
463
|
+
|
|
464
|
+ cmSrRC_t rc = kOkSrRC;
|
|
465
|
+ const cmChar_t* srFn = "/home/kevin/temp/kr/sr/sr10.sr";
|
|
466
|
+ cmErr_t err;
|
|
467
|
+ cmSyncRecdH_t srH = cmSyncRecdNullHandle;
|
|
468
|
+
|
|
469
|
+ cmErrSetup(&err,&ctx->rpt,"SyncRecdTest");
|
|
470
|
+
|
|
471
|
+
|
|
472
|
+ if((rc = cmSyncRecdOpen(ctx, &srH, srFn )) != kOkSrRC )
|
|
473
|
+ {
|
|
474
|
+ cmErrMsg(&err,kTestFailRC,"Sync-recd open failed.");
|
|
475
|
+ goto errLabel;
|
|
476
|
+ }
|
|
477
|
+
|
|
478
|
+ cmSyncRecdPrint(srH);
|
|
479
|
+
|
|
480
|
+ errLabel:
|
|
481
|
+ if((rc = cmSyncRecdFinal(&srH)) != kOkSrRC )
|
|
482
|
+ cmErrMsg(&err,kTestFailRC,"Sync-recd close failed.");
|
|
483
|
+
|
|
484
|
+ return rc;
|
|
485
|
+
|
|
486
|
+}
|