Anklang 0.3.0-460-gc4ef46ba
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Namespaces | Enumerations | Functions
midievent.hh File Reference
#include <ase/memory.hh>
#include <ase/queuemux.hh>
#include <ase/mathutils.hh>

Go to the source code of this file.

Classes

struct  Ase::MidiEvent
 MidiEvent data structure. More...
 
class  Ase::MidiEventOutput
 A stream of writable MidiEvent structures. More...
 
class  Ase::MidiEventReader< MAXQUEUES >
 An in-order MidiEvent reader for multiple MidiEvent sources. More...
 
struct  Ase::MidiNote
 Components of a MIDI note. More...
 
union  Ase::MidiEvent.__unnamed14__
 
union  Ase::MidiEvent.__unnamed16__
 
union  Ase::MidiEvent.__unnamed18__
 
struct  Ase::MidiEvent.__unnamed18__.__unnamed20__
 
struct  Ase::MidiEvent.__unnamed18__.__unnamed22__
 

Namespaces

namespace  Ase
 The Anklang C++ API namespace.
 

Enumerations

enum class  Ase::MidiEventType : uint8_t {
  PARAM_VALUE , Ase::NOTE_OFF , NOTE_ON , Ase::AFTERTOUCH ,
  Ase::CONTROL_CHANGE , PROGRAM_CHANGE , Ase::CHANNEL_PRESSURE , PITCH_BEND ,
  SYSEX
}
 Type of MIDI Events. More...
 
enum class  Ase::MidiMessage : int32_t {
  NONE , ALL_SOUND_OFF , RESET_ALL_CONTROLLERS , LOCAL_CONTROL ,
  ALL_NOTES_OFF , OMNI_MODE_OFF , OMNI_MODE_ON , MONO_MODE_ON ,
  POLY_MODE_ON , PARAM_VALUE , NOTE_OFF , NOTE_ON ,
  AFTERTOUCH , CONTROL_CHANGE , PROGRAM_CHANGE , CHANNEL_PRESSURE ,
  PITCH_BEND , SYSEX
}
 Extended type information for MidiEvent. More...
 

Functions

MidiEvent Ase::make_note_on (uint16 chnl, uint8 mkey, float velo, float tune, uint nid)
 
MidiEvent Ase::make_note_off (uint16 chnl, uint8 mkey, float velo, float tune, uint nid)
 
MidiEvent Ase::make_aftertouch (uint16 chnl, uint8 mkey, float velo, float tune, uint nid)
 
MidiEvent Ase::make_pressure (uint16 chnl, float velo)
 
MidiEvent Ase::make_control (uint16 chnl, uint prm, float val)
 
MidiEvent Ase::make_control8 (uint16 chnl, uint prm, uint8 cval)
 
MidiEvent Ase::make_program (uint16 chnl, uint prgrm)
 
MidiEvent Ase::make_pitch_bend (uint16 chnl, float val)
 
MidiEvent Ase::make_param_value (uint param, double pvalue)
 
int Ase::QueueMultiplexer_priority (const MidiEvent &e)
 

Class Documentation

◆ Ase::MidiEvent.__unnamed14__

union Ase::MidiEvent.__unnamed14__

Definition at line 56 of file midievent.hh.

Class Members
uint8 fragment Flag for multi-part control change mesages.
uint8 key NOTE, KEY_PRESSURE MIDI note, 0…0x7f, 60 = middle C at 261.63 Hz.

◆ Ase::MidiEvent.__unnamed16__

union Ase::MidiEvent.__unnamed16__

Definition at line 60 of file midievent.hh.

Class Members
uint length Data event length of byte array.
uint noteid NOTE, identifier for note expression handling or 0xffffffff.
uint param PROGRAM_CHANGE (program), CONTROL_CHANGE (controller):0…0x7f; PARAM_VALUE:uint32_t.

◆ Ase::MidiEvent.__unnamed18__

union Ase::MidiEvent.__unnamed18__

Definition at line 65 of file midievent.hh.

Class Members
struct MidiEvent.__unnamed18__.__unnamed20__ __unnamed__
struct MidiEvent.__unnamed18__.__unnamed22__ __unnamed__
char * data Data event byte array.
double pvalue Numeric parameter value, PARAM_VALUE.

◆ Ase::MidiEvent.__unnamed18__.__unnamed20__

struct Ase::MidiEvent.__unnamed18__.__unnamed20__

Definition at line 68 of file midievent.hh.

Class Members
uint cval CONTROL_CHANGE control value, 0…0x7f.
float value CONTROL_CHANGE 0…+1, CHANNEL_PRESSURE, 0…+1, PITCH_BEND -1…+1.

◆ Ase::MidiEvent.__unnamed18__.__unnamed22__

struct Ase::MidiEvent.__unnamed18__.__unnamed22__

Definition at line 72 of file midievent.hh.

Class Members
float tuning NOTE, fine tuning in ±cents.
float velocity NOTE, KEY_PRESSURE, CHANNEL_PRESSURE, 0…+1.