hydrogen 1.2.3
MidiInput Class Referenceabstract

MIDI input base class. More...

#include <MidiInput.h>

Inheritance diagram for MidiInput:
Object< MidiInput > Base AlsaMidiDriver CoreMidiDriver JackMidiDriver PortMidiDriver

Public Member Functions

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

Protected Member Functions

void handleNoteOffMessage (const MidiMessage &msg, bool CymbalChoke)
 
void handleNoteOnMessage (const MidiMessage &msg)
 
- Protected Member Functions inherited from Object< MidiInput >
 ~Object ()
 
- Protected Member Functions inherited from Base
 ~Base ()
 

Protected Attributes

bool m_bActive
 

Private Member Functions

 H2_OBJECT (MidiInput)
 

Private Attributes

int __hihat_cc_openess
 

Additional Inherited Members

- Static Public Member Functions inherited from Base
static const char * _class_name ()
 return the class name
 
static QString base_clock (const QString &sMsg)
 Measures the current time and stores it in __last_clock.
 
static QString base_clock_in (const QString &sMsg)
 
static int bootstrap (Logger *logger, bool count=false)
 must be called before any Object instantiation !
 
static bool count_active ()
 
static int getAliveObjectCount ()
 
static object_map_t getObjectMap ()
 
static Loggerlogger ()
 return the logger instance
 
static int objects_count ()
 
static void printObjectMapDiff (object_map_t map)
 Creates the difference between a snapshot of the object map and its current state and prints it to std::cout.
 
static void set_count (bool flag)
 enable/disable class instances counting
 
static void write_objects_map_to (std::ostream &out, object_map_t *map=nullptr)
 output the full objects map to a given ostream
 
static void write_objects_map_to_cerr ()
 output objects map to stderr
 
- Static Public Attributes inherited from Base
static QString sPrintIndention = " "
 String used to format the debugging string output of some core classes.
 
- Static Protected Member Functions inherited from Base
static void registerClass (const char *name, const atomic_obj_cpt_t *counters)
 
- Static Protected Attributes inherited from Base
static bool __count = false
 should we count class instances
 
static timeval __last_clock = { 0, 0 }
 
static Logger__logger = nullptr
 

Detailed Description

MIDI input base class.

Definition at line 38 of file MidiInput.h.

Constructor & Destructor Documentation

◆ MidiInput()

MidiInput ( )

Definition at line 38 of file MidiInput.cpp.

◆ ~MidiInput()

~MidiInput ( )
virtual

Definition at line 47 of file MidiInput.cpp.

Member Function Documentation

◆ close()

virtual void close ( )
pure virtual

◆ getOutputPortList()

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

◆ H2_OBJECT()

H2_OBJECT ( MidiInput )
private

◆ handleControlChangeMessage()

void handleControlChangeMessage ( const MidiMessage & msg)

Definition at line 162 of file MidiInput.cpp.

◆ handleMidiMessage()

void handleMidiMessage ( const MidiMessage & msg)

Definition at line 52 of file MidiInput.cpp.

◆ handleNoteOffMessage()

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

Definition at line 305 of file MidiInput.cpp.

◆ handleNoteOnMessage()

void handleNoteOnMessage ( const MidiMessage & msg)
protected

Definition at line 203 of file MidiInput.cpp.

◆ handlePolyphonicKeyPressureMessage()

void handlePolyphonicKeyPressureMessage ( const MidiMessage & msg)

Definition at line 298 of file MidiInput.cpp.

◆ handleProgramChangeMessage()

void handleProgramChangeMessage ( const MidiMessage & msg)

Definition at line 185 of file MidiInput.cpp.

◆ handleSysexMessage()

void handleSysexMessage ( const MidiMessage & msg)

Definition at line 345 of file MidiInput.cpp.

◆ open()

virtual void open ( )
pure virtual

◆ setActive()

void setActive ( bool isActive)
inline

Definition at line 49 of file MidiInput.h.

Field Documentation

◆ __hihat_cc_openess

int __hihat_cc_openess
private

Definition at line 66 of file MidiInput.h.

◆ m_bActive

bool m_bActive
protected

Definition at line 59 of file MidiInput.h.