-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtype.v
35 lines (29 loc) · 775 Bytes
/
type.v
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
module vmidi
type TrkData =
SequenceNumber | TextEvent | CopyrightNotice |
TrackName | InstrumentName | Lyrics | Marker |
CuePoint | DeviceName | MidiChannelPrefix |
EndOfTrack | SetTempo | SMPTEOffset |
TimeSignature | KeySignature | SequencerSpecific |
SysEx |
NoteOff | NoteOn | NoteAftertouch | Controller |
ProgramChange | ChannelAftertouch | PitchBend
type Meta = SequenceNumber | TextEvent | CopyrightNotice |
TrackName | InstrumentName | Lyrics | Marker |
CuePoint | MidiChannelPrefix | EndOfTrack |
SetTempo | SMPTEOffset | TimeSignature |
KeySignature | SequencerSpecific
struct Track {
pub mut:
nb int
data []TrkData
}
struct Midi {
mut:
time_division_ int
pub mut:
format_type int
number_tracks int
tracks []Track
micros_per_tick int
}