ConfigObject

Warning

Only a single ConfigObject should ever exist, GlobalLog::Config. It is initialised within SimulationSettings, and should not otherwise be modified.

Any other ConfigObjects are ignored.

struct ConfigObject

A packager for globally accessible variables for the LoggerCore object to refer to.

A single ConfigObject exists, the globally defined GlobalLog::Config. Defined in @fileinfo{path}

Public Functions

ConfigObject()

Default initialiser. Initialises TerminalOutput, and sets Level=INFO, ShowHeaders=true and AppendNewline=true.

void SetLevel(int level)

Convenient interface for setting Level from integer values.

void Initialise(int level, bool header, std::string welcomeFile)

Used to initialise globally Config, after the command line arguments have been parsed.

Parameters:
  • level – The (as an integer) to be assigned to the Level

  • header – The value to be assigned to ShowHeaders

  • welcomeFile – The file location of the RAMICES ‘welcome.dat’ file, which prints a cute little message

Public Members

bool AppendNewline

If true, all Log commands have a newline automatically appended to them. Default: TRUE.

bool ShowHeaders

If true, all Log commands are preceeded by ‘header info’ about the type of log. Headers occur only once per LOG call, linebreaks are automatically aligned. Default: TRUE.

LogLevel Level

Any calls to LOG with a value higher than this are ignored. Default: INFO.

bool TerminalOutput

Automatically detected at runtime-start. True if the output stream is a tty terminal capable of interpreting ANSI commands.