CorsixTH engine (the C++ part)
Open source implementation of Theme Hospital
Loading...
Searching...
No Matches
Classes | Typedefs | Functions | Variables
xmi2mid.h File Reference
#include "config.h"
#include <vector>

Go to the source code of this file.

Classes

struct  midi_token
 

Typedefs

using midi_token_list = std::vector< midi_token >
 

Functions

bool operator< (const midi_token &oLeft, const midi_token &oRight)
 
midi_token_list xmi_to_midi_token_list (const unsigned char *xmi_data, size_t xmi_length, uint32_t &iTempo)
 
uint8_t * transcode_xmi_to_midi (const unsigned char *xmi_data, size_t xmi_length, size_t *midi_length)
 

Variables

constexpr uint8_t midi_event_note_off = 0x80
 
constexpr uint8_t midi_event_note_on = 0x90
 
constexpr uint8_t midi_event_poly_key_pressure = 0xA0
 
constexpr uint8_t midi_event_control_change = 0xB0
 
constexpr uint8_t midi_event_program_change = 0xC0
 
constexpr uint8_t midi_event_channel_pressure = 0xD0
 
constexpr uint8_t midi_event_pitch_bend = 0xE0
 
constexpr uint8_t midi_event_sysex = 0xF0
 
constexpr uint8_t midi_event_end_of_sysex = 0xF7
 
constexpr uint8_t midi_event_meta = 0xFF
 
constexpr uint8_t midi_meta_event_end_of_track = 0x2F
 
constexpr uint8_t midi_meta_event_set_tempo = 0x51
 
constexpr uint8_t midi_control_code_volume = 7
 
constexpr uint8_t midi_channel_code_all_notes_off = 123
 
constexpr uint8_t midi_channel_code_all_sound_off = 120
 
constexpr uint8_t midi_channel_code_reset_controllers = 121
 
constexpr double xmi_ticks_per_microsecond = (3.0 * time_multiplier) / 25000.0
 
constexpr double xmi_microseconds_per_tick = 25000.0 / (3.0 * time_multiplier)
 

Typedef Documentation

◆ midi_token_list

Function Documentation

◆ operator<()

bool operator< ( const midi_token oLeft,
const midi_token oRight 
)

◆ transcode_xmi_to_midi()

uint8_t * transcode_xmi_to_midi ( const unsigned char xmi_data,
size_t  xmi_length,
size_t *  midi_length 
)

◆ xmi_to_midi_token_list()

midi_token_list xmi_to_midi_token_list ( const unsigned char xmi_data,
size_t  xmi_length,
uint32_t &  iTempo 
)

Variable Documentation

◆ midi_channel_code_all_notes_off

constexpr uint8_t midi_channel_code_all_notes_off = 123
constexpr

◆ midi_channel_code_all_sound_off

constexpr uint8_t midi_channel_code_all_sound_off = 120
constexpr

◆ midi_channel_code_reset_controllers

constexpr uint8_t midi_channel_code_reset_controllers = 121
constexpr

◆ midi_control_code_volume

constexpr uint8_t midi_control_code_volume = 7
constexpr

◆ midi_event_channel_pressure

constexpr uint8_t midi_event_channel_pressure = 0xD0
constexpr

◆ midi_event_control_change

constexpr uint8_t midi_event_control_change = 0xB0
constexpr

◆ midi_event_end_of_sysex

constexpr uint8_t midi_event_end_of_sysex = 0xF7
constexpr

◆ midi_event_meta

constexpr uint8_t midi_event_meta = 0xFF
constexpr

◆ midi_event_note_off

constexpr uint8_t midi_event_note_off = 0x80
constexpr

◆ midi_event_note_on

constexpr uint8_t midi_event_note_on = 0x90
constexpr

◆ midi_event_pitch_bend

constexpr uint8_t midi_event_pitch_bend = 0xE0
constexpr

◆ midi_event_poly_key_pressure

constexpr uint8_t midi_event_poly_key_pressure = 0xA0
constexpr

◆ midi_event_program_change

constexpr uint8_t midi_event_program_change = 0xC0
constexpr

◆ midi_event_sysex

constexpr uint8_t midi_event_sysex = 0xF0
constexpr

◆ midi_meta_event_end_of_track

constexpr uint8_t midi_meta_event_end_of_track = 0x2F
constexpr

◆ midi_meta_event_set_tempo

constexpr uint8_t midi_meta_event_set_tempo = 0x51
constexpr

◆ xmi_microseconds_per_tick

constexpr double xmi_microseconds_per_tick = 25000.0 / (3.0 * time_multiplier)
constexpr

◆ xmi_ticks_per_microsecond

constexpr double xmi_ticks_per_microsecond = (3.0 * time_multiplier) / 25000.0
constexpr