ソースを参照

cmDspKr.c : Added 'muid' as in input to cmDspScFol to accept a unique

identifier for each incoming MIDI message. This is then used as the 'muid'
arg. to cmScMatcherExec() to support definitively matching score events and
particular MIDI events.
master
Kevin Larke 9年前
コミット
39021c4c3b
1個のファイルの変更3行の追加1行の削除
  1. 3
    1
      dsp/cmDspKr.c

+ 3
- 1
dsp/cmDspKr.c ファイルの表示

@@ -889,6 +889,7 @@ enum
889 889
   kMinVelSfId,
890 890
   kMeasflSfId,
891 891
   kIndexSfId,
892
+  kMuidSfId,
892 893
   kStatusSfId,
893 894
   kD0SfId,
894 895
   kD1SfId,
@@ -935,6 +936,7 @@ cmDspInst_t*  _cmDspScFolAlloc(cmDspCtx_t* ctx, cmDspClass_t* classPtr, unsigned
935 936
     { "minvel",kMinVelSfId,   0, 0, kInDsvFl | kUIntDsvFl | kOptArgDsvFl,     "Minimum velocity."},
936 937
     { "measfl",kMeasflSfId,   0, 0, kInDsvFl | kBoolDsvFl | kOptArgDsvFl,     "Enable measurements"},
937 938
     { "index", kIndexSfId,    0, 0, kInDsvFl | kUIntDsvFl,                    "Tracking start location."},
939
+    { "muid",  kMuidSfId,     0, 0, kInDsvFl | kUIntDsvFl,                    "MIDI msg file unique id"},
938 940
     { "status",kStatusSfId,   0, 0, kInDsvFl | kUIntDsvFl,                    "MIDI status byte"},
939 941
     { "d0",    kD0SfId,       0, 0, kInDsvFl | kUIntDsvFl,                    "MIDI data byte 0"},
940 942
     { "d1",    kD1SfId,       0, 0, kInDsvFl | kUIntDsvFl,                    "MIDI data byte 1"},
@@ -1142,7 +1144,7 @@ cmDspRC_t _cmDspScFolRecv(cmDspCtx_t* ctx, cmDspInst_t* inst, const cmDspEvt_t*
1142 1144
           p->sfp->cbArg = &p->arg;
1143 1145
 
1144 1146
           // this call may result in a callback to _cmScFolMatcherCb()
1145
-          if( cmScMatcherExec(p->sfp, cmDspUInt(inst,kSmpIdxSfId), cmDspUInt(inst,kStatusSfId), cmDspUInt(inst,kD0SfId), cmDspUInt(inst,kD1SfId), &scLocIdx) == cmOkRC )
1147
+          if( cmScMatcherExec(p->sfp, cmDspUInt(inst,kSmpIdxSfId), cmDspUInt(inst,kMuidSfId), cmDspUInt(inst,kStatusSfId), cmDspUInt(inst,kD0SfId), cmDspUInt(inst,kD1SfId), &scLocIdx) == cmOkRC )
1146 1148
             if( scLocIdx != cmInvalidIdx )
1147 1149
             {
1148 1150
               // It is possible that the internal score follower may go backwards.  

読み込み中…
キャンセル
保存