cfl_definitions.h File Reference
#include <iostream>
#include <sstream>
#include <inttypes.h>
#include "configuration.h"

Go to the source code of this file.

Namespaces

 faudes
 

Macros

#define FAUDES_IDX_MAX   0xFFFFFFFFU
 
#define FAUDES_INT_MIN   (std::numeric_limits<int>::min())
 
#define FAUDES_INT_MAX   (std::numeric_limits<Type>::max())
 
#define FD_NAMELEN   13
 
#define FD_MAXCONTAINERNAME   70
 
#define FD_SMALLTRANSREL   100
 
#define FD_CONSECUTIVE   6
 
#define FD_RTIMAXSIG   5
 
#define FAUDES_WRITE_DIRECT(message)    { if(!faudes::ConsoleOut::G()->Mute()) { std::cout << message << std::endl;} }
 
#define FAUDES_WRITE_CONSOLE(message)
 
#define FD_WARN(message)   FAUDES_WRITE_CONSOLE("FAUDES_WARNING: " << message)
 
#define FD_ERR(message)
 
#define FD_WP(message)
 
#define FD_WPC(cntnow, contdone, message)
 
#define FD_WPD(cntnow, cntdone, message)
 
#define FD_DF(message)
 
#define FD_DG(message)
 
#define FD_DC(message)
 
#define FD_DRTI(message)
 
#define FD_DREG(message)
 
#define FD_DV(message)
 
#define FAUDES_OBJCOUNT_INC(type)
 
#define FAUDES_OBJCOUNT_DEC(type)
 
#define FAUDES_TIMER_START(msg)
 
#define FAUDES_TIMER_LAP(msg)
 
#define FD_DLINE(message)
 
#define FAUDES_NODOC(a)   a
 

Typedefs

typedef uint32_t faudes::Idx
 
typedef long int faudes::Int
 
typedef double faudes::Float
 

Detailed Description

Compiletime options. This file configures the runtime bahaviour of libFAUDES, in particular informative output on stderr and stdout; see also the Makefile.

Definition in file cfl_definitions.h.

Macro Definition Documentation

◆ FAUDES_IDX_MAX

#define FAUDES_IDX_MAX   0xFFFFFFFFU

Definition at line 44 of file cfl_definitions.h.

◆ FAUDES_INT_MAX

#define FAUDES_INT_MAX   (std::numeric_limits<Type>::max())

Definition at line 49 of file cfl_definitions.h.

◆ FAUDES_INT_MIN

#define FAUDES_INT_MIN   (std::numeric_limits<int>::min())

Definition at line 48 of file cfl_definitions.h.

◆ FAUDES_NODOC

#define FAUDES_NODOC (   a)    a

Doxygen: exclude this from doxygen

Definition at line 208 of file cfl_definitions.h.

◆ FAUDES_OBJCOUNT_DEC

#define FAUDES_OBJCOUNT_DEC (   type)

Definition at line 184 of file cfl_definitions.h.

◆ FAUDES_OBJCOUNT_INC

#define FAUDES_OBJCOUNT_INC (   type)

Debug: count objects, report on exit

Definition at line 183 of file cfl_definitions.h.

◆ FAUDES_TIMER_LAP

#define FAUDES_TIMER_LAP (   msg)
Value:
{ \
faudes_systime_t now; \
faudes_mstime_t lap; \
faudes_gettimeofday(&now); \
faudes_diffsystime(now,gPerfTimer1,&lap); \
FD_WARN("timer lap " << msg << " " << lap << "ms");}
faudes_systime_t gPerfTimer1

Definition at line 191 of file cfl_definitions.h.

◆ FAUDES_TIMER_START

#define FAUDES_TIMER_START (   msg)
Value:
{ \
FD_WARN("timer start " << msg ); \
faudes_gettimeofday(& gPerfTimer1 ); }

Debug: timing

Definition at line 188 of file cfl_definitions.h.

◆ FAUDES_WRITE_CONSOLE

#define FAUDES_WRITE_CONSOLE (   message)
Value:
{ if(!faudes::ConsoleOut::G()->Mute()) { \
std::ostringstream cfl_line; cfl_line << message << std::endl; \
faudes::ConsoleOut::G()->Write(cfl_line.str()); } }
static ConsoleOut * G(void)
Definition: cfl_utils.cpp:431
virtual void Write(const std::string &message, long int cntnow=0, long int cntdone=0, int verb=0)
Definition: cfl_utils.cpp:450

Debug: output macro for optional redirection of all console output

Definition at line 79 of file cfl_definitions.h.

◆ FAUDES_WRITE_DIRECT

#define FAUDES_WRITE_DIRECT (   message)     { if(!faudes::ConsoleOut::G()->Mute()) { std::cout << message << std::endl;} }

Debug: console output, no redirection

Definition at line 75 of file cfl_definitions.h.

◆ FD_CONSECUTIVE

#define FD_CONSECUTIVE   6

Min number of states to use consecutive section in file output

Definition at line 64 of file cfl_definitions.h.

◆ FD_DC

#define FD_DC (   message)

Debug: optional report on container operations

Definition at line 154 of file cfl_definitions.h.

◆ FD_DF

#define FD_DF (   message)

Debug: optional report on user functions

Definition at line 139 of file cfl_definitions.h.

◆ FD_DG

#define FD_DG (   message)

Debug: optional report on generator operations

Definition at line 147 of file cfl_definitions.h.

◆ FD_DLINE

#define FD_DLINE (   message)
Value:
std::endl << "################################################ " << \
std::endl << message << " at file " << __FILE__ << ", line " << __LINE__ << endl << \
std::endl << "################################################ " << std::endl );
#define FD_WARN(message)

Tutorial/debugging mark

Definition at line 200 of file cfl_definitions.h.

◆ FD_DREG

#define FD_DREG (   message)

Debug: optional report registry operations

Definition at line 168 of file cfl_definitions.h.

◆ FD_DRTI

#define FD_DRTI (   message)

Debug: optional on function and type definition

Definition at line 161 of file cfl_definitions.h.

◆ FD_DV

#define FD_DV (   message)

Debug: optional low-level report on iterations and token IO

Definition at line 175 of file cfl_definitions.h.

◆ FD_ERR

#define FD_ERR (   message)

Debug: report more errors with file/line info

Definition at line 92 of file cfl_definitions.h.

◆ FD_MAXCONTAINERNAME

#define FD_MAXCONTAINERNAME   70

Max length of automatic container names (set to -1 for unlimited)

Definition at line 58 of file cfl_definitions.h.

◆ FD_NAMELEN

#define FD_NAMELEN   13

Length of strings for text fields in token output

Definition at line 55 of file cfl_definitions.h.

◆ FD_RTIMAXSIG

#define FD_RTIMAXSIG   5

Max number of automatic signatures

Definition at line 67 of file cfl_definitions.h.

◆ FD_SMALLTRANSREL

#define FD_SMALLTRANSREL   100

Max size of transrel for state name output

Definition at line 61 of file cfl_definitions.h.

◆ FD_WARN

#define FD_WARN (   message)    FAUDES_WRITE_CONSOLE("FAUDES_WARNING: " << message)

Debug: always report warnings

Definition at line 85 of file cfl_definitions.h.

◆ FD_WP

#define FD_WP (   message)

Application callback: optional write progress report to console or application

Definition at line 99 of file cfl_definitions.h.

◆ FD_WPC

#define FD_WPC (   cntnow,
  contdone,
  message 
)

Application callback: optional write progress report to console or application, incl count

Definition at line 108 of file cfl_definitions.h.

◆ FD_WPD

#define FD_WPD (   cntnow,
  cntdone,
  message 
)
Value:
{ \
static faudes_systime_t start; \
static faudes_systime_t now; \
static faudes_mstime_t lap; \
static Int prog; \
static bool init(false); \
if(!init) { faudes_gettimeofday(&start); prog=cntnow;} \
faudes_gettimeofday(&now); \
faudes_diffsystime(now,start,&lap); \
if(!init) lap=10000; \
if(lap>=10000) { \
Int cps = (cntnow-prog)/(lap/1000); \
std::ostringstream cfl_line; \
cfl_line << "FAUDES_PROGRESS: " << message; \
if(cntnow>0) cfl_line << " (#/sec: " << cps << ")";\
cfl_line << std::endl; \
faudes::ConsoleOut::G()->Write(cfl_line.str(),(cntnow),(cntdone)); LoopCallback(); \
faudes_gettimeofday(&start); \
prog=cntnow; \
} \
init=true; }
long int Int

Alternative progessreport for development

Definition at line 112 of file cfl_definitions.h.

libFAUDES 2.33b --- 2025.05.07 --- c++ api documentaion by doxygen