Parcourir la source

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 il y a 9 ans
Parent
révision
39021c4c3b
1 fichiers modifiés avec 3 ajouts et 1 suppressions
  1. 3
    1
      dsp/cmDspKr.c

+ 3
- 1
dsp/cmDspKr.c Voir le fichier

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

Chargement…
Annuler
Enregistrer