hydrogen 1.2.5
DiskWriterDriver Class Reference

Driver for export audio to disk. More...

#include <DiskWriterDriver.h>

Inheritance diagram for DiskWriterDriver:
Object< DiskWriterDriver > AudioOutput Base Object< AudioOutput > Base

Public Member Functions

 DiskWriterDriver (audioProcessCallback processCallback)
 ~DiskWriterDriver ()
virtual int connect () override
virtual void disconnect () override
 disconnect
virtual unsigned getBufferSize () override
virtual float * getOut_L () override
virtual float * getOut_R () override
virtual unsigned getSampleRate () override
virtual int init (unsigned nBufferSize) override
bool isDoneWriting () const
void setCompressionLevel (double fCompressionLevel)
void setFileName (const QString &sFilename)
void setSampleDepth (int nNewDepth)
void setSampleRate (unsigned nNewRate)
void write ()
bool writingFailed () const
Public Member Functions inherited from Object< DiskWriterDriver >
 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.
Public Member Functions inherited from AudioOutput
 AudioOutput ()=default
virtual ~AudioOutput ()
virtual int getLatency ()
 Approximate audio latency (in frames) A reasonable approximation is the buffer time on most audio systems.
virtual int getXRuns () const
 Get the number of XRuns that occurred since the audio driver has started.
Public Member Functions inherited from Object< AudioOutput >
 Object ()

Data Fields

bool m_bDoneWriting
bool m_bWritingFailed
double m_fCompressionLevel
 A value between 0.0 (maximum quality) and 1.0 (maximum compression).
unsigned m_nBufferSize
int m_nSampleDepth
unsigned m_nSampleRate
float * m_pOut_L
float * m_pOut_R
audioProcessCallback m_processCallback
QString m_sFilename

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 Member Functions inherited from AudioOutput
static QStringList getDevices ()
Static Public Attributes inherited from Base
static QString sPrintIndention = " "
 String used to format the debugging string output of some core classes.
Protected Member Functions inherited from Object< DiskWriterDriver >
 ~Object ()
Protected Member Functions inherited from Base
 ~Base ()
Protected Member Functions inherited from Object< AudioOutput >
 ~Object ()
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

Driver for export audio to disk.

Definition at line 41 of file DiskWriterDriver.h.

Constructor & Destructor Documentation

◆ DiskWriterDriver()

Definition at line 397 of file DiskWriterDriver.cpp.

◆ ~DiskWriterDriver()

Definition at line 412 of file DiskWriterDriver.cpp.

Member Function Documentation

◆ connect()

int connect ( )
overridevirtual

Implements AudioOutput.

Definition at line 429 of file DiskWriterDriver.cpp.

◆ disconnect()

void disconnect ( )
overridevirtual

disconnect

Implements AudioOutput.

Definition at line 445 of file DiskWriterDriver.cpp.

◆ getBufferSize()

virtual unsigned getBufferSize ( )
inlineoverridevirtual

Implements AudioOutput.

Definition at line 75 of file DiskWriterDriver.h.

◆ getOut_L()

virtual float * getOut_L ( )
inlineoverridevirtual

Implements AudioOutput.

Definition at line 88 of file DiskWriterDriver.h.

◆ getOut_R()

virtual float * getOut_R ( )
inlineoverridevirtual

Implements AudioOutput.

Definition at line 91 of file DiskWriterDriver.h.

◆ getSampleRate()

unsigned getSampleRate ( )
overridevirtual

Implements AudioOutput.

Definition at line 459 of file DiskWriterDriver.cpp.

◆ init()

int init ( unsigned nBufferSize)
overridevirtual

Implements AudioOutput.

Definition at line 417 of file DiskWriterDriver.cpp.

◆ isDoneWriting()

bool isDoneWriting ( ) const
inline

Definition at line 66 of file DiskWriterDriver.h.

◆ setCompressionLevel()

void setCompressionLevel ( double fCompressionLevel)

Definition at line 464 of file DiskWriterDriver.cpp.

◆ setFileName()

void setFileName ( const QString & sFilename)
inline

Definition at line 95 of file DiskWriterDriver.h.

◆ setSampleDepth()

void setSampleDepth ( int nNewDepth)
inline

Definition at line 83 of file DiskWriterDriver.h.

◆ setSampleRate()

void setSampleRate ( unsigned nNewRate)
inline

Definition at line 80 of file DiskWriterDriver.h.

◆ write()

void write ( )

Definition at line 434 of file DiskWriterDriver.cpp.

◆ writingFailed()

bool writingFailed ( ) const
inline

Definition at line 69 of file DiskWriterDriver.h.

Field Documentation

◆ m_bDoneWriting

bool m_bDoneWriting

Definition at line 72 of file DiskWriterDriver.h.

◆ m_bWritingFailed

bool m_bWritingFailed

Definition at line 73 of file DiskWriterDriver.h.

◆ m_fCompressionLevel

double m_fCompressionLevel

A value between 0.0 (maximum quality) and 1.0 (maximum compression).

Definition at line 52 of file DiskWriterDriver.h.

◆ m_nBufferSize

unsigned m_nBufferSize

Definition at line 48 of file DiskWriterDriver.h.

◆ m_nSampleDepth

int m_nSampleDepth

Definition at line 49 of file DiskWriterDriver.h.

◆ m_nSampleRate

unsigned m_nSampleRate

Definition at line 46 of file DiskWriterDriver.h.

◆ m_pOut_L

float* m_pOut_L

Definition at line 54 of file DiskWriterDriver.h.

◆ m_pOut_R

float* m_pOut_R

Definition at line 55 of file DiskWriterDriver.h.

◆ m_processCallback

audioProcessCallback m_processCallback

Definition at line 53 of file DiskWriterDriver.h.

◆ m_sFilename

QString m_sFilename

Definition at line 47 of file DiskWriterDriver.h.