public InstrumentDef() { for (var i = 1; i < CkiConsts.TRACK_VALUES_PER_SCREEN * 20 + 1; i++) { TrackValues[i] = new TrackValueDef { SlotIndex = i, Type = TrackValueType.Empty }; } }
private TrackValueDef ParseTrackValueDef(int index, JSONNode json) { TrackValueType trackValueType = TrackValueType.Empty; if (json[JsonKeys.MIDI_CC] != null) { trackValueType = TrackValueType.MidiCC; } else if (json[JsonKeys.TRACK_CONTROL] != null) { trackValueType = TrackValueType.TrackControl; } if (trackValueType == TrackValueType.Empty) { return(null); } var trackValueDef = new TrackValueDef { SlotIndex = index, Type = trackValueType }; switch (trackValueType) { case TrackValueType.MidiCC: trackValueDef.MidiCC = json[JsonKeys.MIDI_CC]; trackValueDef.Label = json[JsonKeys.LABEL]; break; case TrackValueType.TrackControl: trackValueDef.TrackControl = InstrumentUtils.TrackControlFromJson(json); break; default: throw new ArgumentOutOfRangeException(); } return(trackValueDef); }
public TrackValueDataProvider(TrackValueDef trackValue) { TrackValue = trackValue; }