Beast - Music Synthesizer and Composer  0.11.1+10.g2da35
bsemidifile.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __BSE_MIDI_FILE_H__
3 #define __BSE_MIDI_FILE_H__
4 
5 #include <bse/bsemidievent.hh>
6 
7 typedef struct {
8  guint n_events;
9  BseMidiEvent **events;
11 typedef struct {
12  Bse::MusicalTuning musical_tuning;
13  guint tpqn; /* ticks-per-quarter-note */
14  gfloat tpqn_rate;
15  /* signature */
16  gfloat bpm;
17  guint numerator, denominator;
18  /* tracks */
19  guint n_tracks;
20  BseMidiFileTrack tracks[1]; /* flexible array */
21 } BseMidiFile;
22 
23 BseMidiFile* bse_midi_file_load (const gchar *file_name,
24  Bse::Error *error_p);
25 void bse_midi_file_free (BseMidiFile *smf);
26 void bse_midi_file_add_part_events (BseMidiFile *smf,
27  guint nth_track,
28  BsePart *part,
29  BseTrack *ptrack);
30 void bse_midi_file_setup_song (BseMidiFile *smf,
31  BseSong *song);
32 
33 #endif /* __BSE_MIDI_FILE_H__ */
Definition: bsetrack.hh:22
Definition: bsemidifile.hh:11
Definition: bsemidifile.hh:7
Definition: bsesong.hh:23
Definition: bsemidievent.hh:72
Definition: bsepart.hh:24