hydrogen 1.2.5
SMFWriter Class Referenceabstract

#include <SMF.h>

Inheritance diagram for SMFWriter:
Object< SMFWriter > Base SMF0Writer SMF1Writer SMF1WriterMulti SMF1WriterSingle

Public Member Functions

 SMFWriter ()
virtual ~SMFWriter ()
void save (const QString &sFilename, std::shared_ptr< Song > pSong)
Public Member Functions inherited from Object< SMFWriter >
 Object ()
Public Member Functions inherited from Base
 Base ()
 Base (const Base &other)
virtual const char * class_name () const
void logBacktrace () const
 Print the current stack at point into the debug log.
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

virtual SMFcreateSMF (std::shared_ptr< Song > pSong)=0
SMFTrackcreateTrack0 (std::shared_ptr< Song > pSong)
virtual EventListgetEvents (std::shared_ptr< Song > pSong, std::shared_ptr< Instrument > pInstr)=0
virtual void packEvents (std::shared_ptr< Song > pSong, SMF *pSmf)=0
virtual void prepareEvents (std::shared_ptr< Song > pSong, SMF *pSmf)=0
void sortEvents (EventList *pEventList)
Protected Member Functions inherited from Object< SMFWriter >
 ~Object ()
Protected Member Functions inherited from Base
 ~Base ()

Private Member Functions

void saveSMF (const QString &sFilename, SMF *pSmf)

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
static bool bLogColors = true

Detailed Description

Definition at line 104 of file SMF.h.

Constructor & Destructor Documentation

◆ SMFWriter()

SMFWriter ( )

Definition at line 202 of file SMF.cpp.

◆ ~SMFWriter()

~SMFWriter ( )
virtual

Definition at line 208 of file SMF.cpp.

Member Function Documentation

◆ createSMF()

virtual SMF * createSMF ( std::shared_ptr< Song > pSong)
protectedpure virtual

Implemented in SMF0Writer, and SMF1Writer.

◆ createTrack0()

SMFTrack * createTrack0 ( std::shared_ptr< Song > pSong)
protected

Definition at line 214 of file SMF.cpp.

◆ getEvents()

virtual EventList * getEvents ( std::shared_ptr< Song > pSong,
std::shared_ptr< Instrument > pInstr )
protectedpure virtual

◆ packEvents()

virtual void packEvents ( std::shared_ptr< Song > pSong,
SMF * pSmf )
protectedpure virtual

◆ prepareEvents()

virtual void prepareEvents ( std::shared_ptr< Song > pSong,
SMF * pSmf )
protectedpure virtual

◆ save()

void save ( const QString & sFilename,
std::shared_ptr< Song > pSong )

Definition at line 224 of file SMF.cpp.

◆ saveSMF()

void saveSMF ( const QString & sFilename,
SMF * pSmf )
private

Definition at line 337 of file SMF.cpp.

◆ sortEvents()

void sortEvents ( EventList * pEventList)
protected

Definition at line 318 of file SMF.cpp.