hydrogen 1.1.1
MidiInput Class Referenceabstract

MIDI input base class. More...

#include <MidiInput.h>

Inheritance diagram for MidiInput:
Object AlsaMidiDriver CoreMidiDriver JackMidiDriver PortMidiDriver

Public Member Functions

 MidiInput (const char *class_name)
 
virtual ~MidiInput ()
 
virtual void open ()=0
 
virtual void close ()=0
 
virtual std::vector< QString > getOutputPortList ()=0
 
void setActive (bool isActive)
 
void handleMidiMessage (const MidiMessage &msg)
 
void handleSysexMessage (const MidiMessage &msg)
 
void handleControlChangeMessage (const MidiMessage &msg)
 
void handleProgramChangeMessage (const MidiMessage &msg)
 
void handlePolyphonicKeyPressureMessage (const MidiMessage &msg)
 
- Public Member Functions inherited from Object
 ~Object ()
 destructor More...
 
 Object (const Object &obj)
 copy constructor More...
 
 Object (const char *class_name)
 constructor More...
 
const char * class_name () const
 return the class name More...
 
virtual QString toQString (const QString &sPrefix, bool bShort=true) const
 Formatted string version for debugging purposes. More...
 
void Print (bool bShort=true) const
 Prints content of toQString() via DEBUGLOG. More...
 

Protected Member Functions

void handleNoteOnMessage (const MidiMessage &msg)
 
void handleNoteOffMessage (const MidiMessage &msg, bool CymbalChoke)
 

Protected Attributes

bool m_bActive
 

Private Member Functions

unsigned long computeDeltaNoteOnOfftime ()
 

Private Attributes

unsigned long __noteOnTick
 
unsigned long __noteOffTick
 
int __hihat_cc_openess
 

Additional Inherited Members

- Static Public Member Functions inherited from Object
static void set_count (bool flag)
 enable/disable class instances counting More...
 
static bool count_active ()
 return true if class instances counting is enabled More...
 
static unsigned objects_count ()
 return the number of objects More...
 
static void write_objects_map_to (std::ostream &out)
 output the full objects map to a given ostream More...
 
static void write_objects_map_to_cerr ()
 output objects map to stderr More...
 
static int bootstrap (Logger *logger, bool count=false)
 must be called before any Object instantiation ! More...
 
static Loggerlogger ()
 return the logger instance More...
 
- Static Public Attributes inherited from Object
static QString sPrintIndention = " "
 String used to format the debugging string output of some core classes. More...
 
- Static Protected Attributes inherited from Object
static Logger__logger = nullptr
 logger instance pointer More...
 

Detailed Description

MIDI input base class.

Constructor & Destructor Documentation

◆ MidiInput()

MidiInput ( const char *  class_name)

◆ ~MidiInput()

~MidiInput ( )
virtual

Member Function Documentation

◆ close()

virtual void close ( )
pure virtual

◆ computeDeltaNoteOnOfftime()

unsigned long computeDeltaNoteOnOfftime ( )
private

◆ getOutputPortList()

virtual std::vector< QString > getOutputPortList ( )
pure virtual

◆ handleControlChangeMessage()

void handleControlChangeMessage ( const MidiMessage msg)

◆ handleMidiMessage()

void handleMidiMessage ( const MidiMessage msg)

◆ handleNoteOffMessage()

void handleNoteOffMessage ( const MidiMessage msg,
bool  CymbalChoke 
)
protected

◆ handleNoteOnMessage()

void handleNoteOnMessage ( const MidiMessage msg)
protected

◆ handlePolyphonicKeyPressureMessage()

void handlePolyphonicKeyPressureMessage ( const MidiMessage msg)

◆ handleProgramChangeMessage()

void handleProgramChangeMessage ( const MidiMessage msg)

◆ handleSysexMessage()

void handleSysexMessage ( const MidiMessage msg)

◆ open()

virtual void open ( )
pure virtual

◆ setActive()

void setActive ( bool  isActive)
inline

Field Documentation

◆ __hihat_cc_openess

int __hihat_cc_openess
private

◆ __noteOffTick

unsigned long __noteOffTick
private

◆ __noteOnTick

unsigned long __noteOnTick
private

◆ m_bActive

bool m_bActive
protected