XX CMake Package
Loading...
Searching...
No Matches
XXMidiCommon.h File Reference
#include "XXMusicExportDef.h"
#include <QList>

Go to the source code of this file.

Classes

struct  XX::Midi::Manufacturer
 midi manufacturer codes More...
struct  XX::Midi::Device
struct  XX::Midi::Variables
 common variables and functions for midi handling More...

Namespaces

namespace  XX
namespace  XX::Midi

Typedefs

using XX::Bytes = QList<uchar>
using XX::Midi::Channel = uchar
using XX::Midi::Velocity = uchar
using XX::Midi::SongPosition = uint16_t
using XX::Midi::MessageList = QList<Bytes>

Enumerations

enum  XX::Midi::Event : uchar {
  XX::Midi::Unknown = 0x00 , XX::Midi::NoteOff = 0x80 , XX::Midi::NoteOn = 0x90 , XX::Midi::PolyKeyPressure = 0xA0 ,
  XX::Midi::ControlChange = 0xB0 , XX::Midi::ProgrammChange = 0xC0 , XX::Midi::ChannelPressure = 0xD0 , XX::Midi::PitchBend = 0xE0 ,
  XX::Midi::System = 0xF0 , XX::Midi::QuarterFrame = 0xF1 , XX::Midi::SongPositionPointer = 0xF2 , XX::Midi::SongSelect = 0xF3 ,
  XX::Midi::TuneRequest = 0xF6 , XX::Midi::SysExEnd = 0xF7 , XX::Midi::Clock = 0xF8 , XX::Midi::UndefinedA = 0xF9 ,
  XX::Midi::Start = 0xFA , XX::Midi::Continue = 0xFB , XX::Midi::Stop = 0xFC , XX::Midi::UndefinedB = 0xFD ,
  XX::Midi::ActiveSensinig = 0xFE , XX::Midi::Reset = 0xFF , XX::Midi::Meta = 0xFF
}
 midi events More...
enum  XX::Midi::MetaEvent : uchar {
  XX::Midi::MetaUnkown = 0x00 , XX::Midi::Text = 0x01 , XX::Midi::Copyright = 0x02 , XX::Midi::TrackName = 0x03 ,
  XX::Midi::InstrumentName = 0x04 , XX::Midi::Lyric = 0x05 , XX::Midi::Marker = 0x06 , XX::Midi::CuePoint = 0x07 ,
  XX::Midi::ChannelPrefix = 0x20 , XX::Midi::MidiPort = 0x21 , XX::Midi::EndOfTrack = 0x2f , XX::Midi::LiveTag = 0x48 ,
  XX::Midi::Tempo = 0x51 , XX::Midi::SMPTEOffset = 0x54 , XX::Midi::TimeSignature = 0x58 , XX::Midi::KeySignature = 0x59
}
 midi meta events More...
enum  XX::Midi::ControllerMessage : uchar {
  XX::Midi::BankSelect = 0x00 , XX::Midi::ModWheel = 0x01 , XX::Midi::BreathController = 0x02 , XX::Midi::FootController = 0x04 ,
  XX::Midi::PortamentoTime = 0x05 , XX::Midi::ChannelVolume = 0x07 , XX::Midi::Balance = 0x08 , XX::Midi::Pan = 0x0A ,
  XX::Midi::ExpressionController = 0x0B , XX::Midi::EffectControl1 = 0x0C , XX::Midi::EffectControl2 = 0x0D , XX::Midi::RememberInit = 0x14 ,
  XX::Midi::RememberBlock = 0x15 , XX::Midi::RememberApply = 0x16 , XX::Midi::RememberRequest = 0x17 , XX::Midi::DataInit = 0x18 ,
  XX::Midi::DataBlock = 0x19 , XX::Midi::DataApply = 0x1A , XX::Midi::Undefined08 = 0x1B , XX::Midi::Undefined09 = 0x1C ,
  XX::Midi::Undefined10 = 0x1D , XX::Midi::Undefined11 = 0x1E , XX::Midi::Undefined12 = 0x1F , XX::Midi::DamperPedal = 0x40 ,
  XX::Midi::Portamento = 0x41 , XX::Midi::Sostenuto = 0x42 , XX::Midi::SoftPedal = 0x42 , XX::Midi::LegatoSwitch = 0x44 ,
  XX::Midi::User01 = 0x66 , XX::Midi::User02 = 0x67 , XX::Midi::User03 = 0x68 , XX::Midi::User04 = 0x69 ,
  XX::Midi::User05 = 0x6A , XX::Midi::User06 = 0x6B , XX::Midi::User07 = 0x6C , XX::Midi::User08 = 0x6D ,
  XX::Midi::User09 = 0x6E , XX::Midi::User10 = 0x6F , XX::Midi::User11 = 0x70 , XX::Midi::User12 = 0x71 ,
  XX::Midi::User13 = 0x72 , XX::Midi::User14 = 0x73 , XX::Midi::User15 = 0x74 , XX::Midi::User16 = 0x75 ,
  XX::Midi::User17 = 0x76 , XX::Midi::User18 = 0x77 , XX::Midi::AllSoundsOff = 0x78 , XX::Midi::ResetAllControlers = 0x79 ,
  XX::Midi::AllNotesOff = 0x78
}
 midi control messages More...
enum class  XX::Midi::Playback : uchar { XX::Midi::Playback::Start , XX::Midi::Playback::Continue , XX::Midi::Playback::Stop }
 midi playback states More...

Functions

BytesXX::operator<< (Bytes &data, const uchar &byte)
bool XX::Midi::isEvent (const uchar value, const Midi::Event mask)
bool XX::Midi::hasFirstBit (const uchar value)
uchar XX::Midi::removeFirstBit (const uchar value)