|
| #define | MD_CONTAINER_BEGIN 50 /* Begining of container types */ |
| |
| #define | MD_ELEMENT(e) ((struct element *)md_check_cast((struct element *)(e), MD_TYPE_ELEMENT)) |
| |
| #define | MD_CONTAINER(e) ((struct containerElement *)md_check_cast((struct element *)(e), MD_TYPE_CONTAINER)) |
| |
| #define | MD_ROOT(e) ((struct rootElement *)md_check_cast((struct element *)(e), MD_TYPE_ROOT)) |
| |
| #define | MD_TRACK(e) ((struct trackElement *)md_check_cast((struct element *)(e), MD_TYPE_TRACK)) |
| |
| #define | MD_TEMPOMAP(e) ((struct tempomapElement *)md_check_cast((struct element *)(e), MD_TYPE_TEMPOMAP)) |
| |
| #define | MD_NOTE(e) ((struct noteElement *)md_check_cast((struct element *)(e), MD_TYPE_NOTE)) |
| |
| #define | MD_PART(e) ((struct partElement *)md_check_cast((struct element *)(e), MD_TYPE_PART)) |
| |
| #define | MD_CONTROL(e) ((struct controlElement *)md_check_cast((struct element *)(e), MD_TYPE_CONTROL)) |
| |
| #define | MD_PROGRAM(e) ((struct programElement *)md_check_cast((struct element *)(e), MD_TYPE_PROGRAM)) |
| |
| #define | MD_KEYTOUCH(e) ((struct keytouchElement *)md_check_cast((struct element *)(e), MD_TYPE_KEYTOUCH)) |
| |
| #define | MD_PRESSURE(e) ((struct pressureElement *)md_check_cast((struct element *)(e), MD_TYPE_PRESSURE)) |
| |
| #define | MD_PITCH(e) ((struct pitchElement *)md_check_cast((struct element *)(e), MD_TYPE_PITCH)) |
| |
| #define | MD_SYSEX(e) ((struct sysexElement *)md_check_cast((struct element *)(e), MD_TYPE_SYSEX)) |
| |
| #define | MD_META(e) ((struct metaElement *)md_check_cast((struct element *)(e), MD_TYPE_META)) |
| |
| #define | MD_MAP(e) ((struct mapElement *)md_check_cast((struct element *)(e), MD_TYPE_MAP)) |
| |
| #define | MD_KEYSIG(e) ((struct keysigElement *)md_check_cast((struct element *)(e), MD_TYPE_KEYSIG)) |
| |
| #define | MD_TIMESIG(e) ((struct timesigElement *)md_check_cast((struct element *)(e), MD_TYPE_TIMESIG)) |
| |
| #define | MD_TEMPO(e) ((struct tempoElement *)md_check_cast((struct element *)(e), MD_TYPE_TEMPO)) |
| |
| #define | MD_TEXT(e) ((struct textElement *)md_check_cast((struct element *)(e), MD_TYPE_TEXT)) |
| |
| #define | MD_SMPTEOFFSET(e) ((struct smpteoffsetElement *)md_check_cast((struct element *)(e), MD_TYPE_SMPTEOFFSET)) |
| |
| #define | MD_TYPE_PART (0 + MD_CONTAINER_BEGIN) |
| |
| #define | MD_TYPE_ROOT (1 + MD_CONTAINER_BEGIN) |
| |
| #define | MD_TYPE_KEYTOUCH 2 |
| |
| #define | MD_TYPE_TEXT 3 |
| |
| #define | MD_TYPE_PITCH 4 |
| |
| #define | MD_TYPE_PROGRAM 5 |
| |
| #define | MD_TYPE_META 6 |
| |
| #define | MD_TYPE_PRESSURE 7 |
| |
| #define | MD_TYPE_NOTE 8 |
| |
| #define | MD_TYPE_ELEMENT 9 |
| |
| #define | MD_TYPE_SMPTEOFFSET 10 |
| |
| #define | MD_TYPE_TEMPO 11 |
| |
| #define | MD_TYPE_TEMPOMAP (12 + MD_CONTAINER_BEGIN) |
| |
| #define | MD_TYPE_SYSEX 13 |
| |
| #define | MD_TYPE_TRACK (14 + MD_CONTAINER_BEGIN) |
| |
| #define | MD_TYPE_KEYSIG 15 |
| |
| #define | MD_TYPE_TIMESIG 16 |
| |
| #define | MD_TYPE_CONTAINER 17 |
| |
| #define | MD_TYPE_MAP 18 |
| |
| #define | MD_TYPE_CONTROL 19 |
| |
|
| struct element * | md_element_new () |
| |
| struct containerElement * | md_container_new () |
| |
| struct rootElement * | md_root_new (void) |
| |
| struct trackElement * | md_track_new (void) |
| |
| struct tempomapElement * | md_tempomap_new () |
| |
| struct noteElement * | md_note_new (short note, short vel, int length) |
| |
| struct partElement * | md_part_new (void) |
| |
| struct controlElement * | md_control_new (short control, short value) |
| |
| struct programElement * | md_program_new (int program) |
| |
| struct keytouchElement * | md_keytouch_new (int note, int vel) |
| |
| struct pressureElement * | md_pressure_new (int vel) |
| |
| struct pitchElement * | md_pitch_new (int val) |
| |
| struct sysexElement * | md_sysex_new (int status, unsigned char *data, int len) |
| |
| struct metaElement * | md_meta_new () |
| |
| struct mapElement * | md_map_new () |
| |
| struct keysigElement * | md_keysig_new (short key, short minor) |
| |
| struct timesigElement * | md_timesig_new (short top, short bottom, short clocks, short n32pq) |
| |
| struct tempoElement * | md_tempo_new (int m) |
| |
| struct textElement * | md_text_new (int type, char *text) |
| |
| struct smpteoffsetElement * | md_smpteoffset_new (short hours, short minutes, short seconds, short frames, short subframes) |
| |
| void | md_add (struct containerElement *c, struct element *e) |
| |
| void | md_free (struct element *el) |
| |
| struct element * | md_check_cast (struct element *el, int type) |
| |