Detailed Description

Console Out

All console out messages (errors, progress report etc) are meant to use the global ConsoleOut instance gConsoleOut, presumably using the convenience macro FAUDES_WRITE_CONSOLE(). The default ConsoleOut::G() provides optional redirection to a named file by G()->ConsoleOut.ToFile("filename"). libFAUDES itself does not set/respect verbosity levels for its diagnostic output, this feature is implemented to support console applications.

The main motivation of the entire construct is to support gui applications that may grab all console output by 1) deriving a specialised class from ConsoleOut and 2) redirection by ConsoleOut::G()->Redirect(derived_class_instance).

Definition at line 344 of file cfl_utils.h.

#include <cfl_utils.h>

Public Member Functions

virtual void Write (const std::string &message, long int cntnow=0, long int cntdone=0, int verb=1)
 
void ToFile (const std::string &filename)
 
bool IsFile (void)
 
const std::string & Filename (void)
 
void Redirect (ConsoleOut *out)
 
void Verb (int verb)
 
int Verb ()
 

Static Public Member Functions

static ConsoleOutG (void)
 

Protected Member Functions

 ConsoleOut (void)
 
virtual ~ConsoleOut (void)
 
virtual void DoWrite (const std::string &message, long int cntnow=0, long int cntdone=0, int verb=1)
 

Private Attributes

std::ofstream * pStream
 
std::string mFilename
 
int mVerb
 
ConsoleOutpInstance
 

Static Private Attributes

static ConsoleOutsmpInstance =NULL
 

Constructor & Destructor Documentation

◆ ConsoleOut()

faudes::ConsoleOut::ConsoleOut ( void  )
protected

Constructor

Definition at line 445 of file cfl_utils.cpp.

◆ ~ConsoleOut()

faudes::ConsoleOut::~ConsoleOut ( void  )
protectedvirtual

Destructor

Definition at line 448 of file cfl_utils.cpp.

Member Function Documentation

◆ DoWrite()

void faudes::ConsoleOut::DoWrite ( const std::string &  message,
long int  cntnow = 0,
long int  cntdone = 0,
int  verb = 1 
)
protectedvirtual

Writing hook. Re-implement this function in order to grab all output

Reimplemented in faudes::PythonConsole.

Definition at line 477 of file cfl_utils.cpp.

◆ Filename()

const std::string & faudes::ConsoleOut::Filename ( void  )
inline

Query filename

Definition at line 354 of file cfl_utils.h.

◆ G()

ConsoleOut * faudes::ConsoleOut::G ( void  )
static

Acess static instance

Definition at line 452 of file cfl_utils.cpp.

◆ IsFile()

bool faudes::ConsoleOut::IsFile ( void  )

Definition at line 471 of file cfl_utils.cpp.

◆ Redirect()

void faudes::ConsoleOut::Redirect ( ConsoleOut out)

Redirect

Definition at line 456 of file cfl_utils.cpp.

◆ ToFile()

void faudes::ConsoleOut::ToFile ( const std::string &  filename)

Redirect to file

Definition at line 463 of file cfl_utils.cpp.

◆ Verb() [1/2]

int faudes::ConsoleOut::Verb ( )
inline

Definition at line 359 of file cfl_utils.h.

◆ Verb() [2/2]

void faudes::ConsoleOut::Verb ( int  verb)
inline

Verbosity

Definition at line 358 of file cfl_utils.h.

◆ Write()

void faudes::ConsoleOut::Write ( const std::string &  message,
long int  cntnow = 0,
long int  cntdone = 0,
int  verb = 1 
)
virtual

Write a std::string message (optional progress report and verbosity)

Definition at line 474 of file cfl_utils.cpp.

Member Data Documentation

◆ mFilename

std::string faudes::ConsoleOut::mFilename
private

Private record file name

Definition at line 371 of file cfl_utils.h.

◆ mVerb

int faudes::ConsoleOut::mVerb
private

Mute flag

Definition at line 373 of file cfl_utils.h.

◆ pInstance

ConsoleOut* faudes::ConsoleOut::pInstance
private

Redirect

Definition at line 375 of file cfl_utils.h.

◆ pStream

std::ofstream* faudes::ConsoleOut::pStream
private

Private output stream

Definition at line 369 of file cfl_utils.h.

◆ smpInstance

ConsoleOut * faudes::ConsoleOut::smpInstance =NULL
staticprivate

Private static instance

Definition at line 377 of file cfl_utils.h.


The documentation for this class was generated from the following files:

libFAUDES 2.34e --- 2026.03.16 --- c++ api documentaion by doxygen