Gambit::Logging::LogMaster Class Reference Logging "controller" object Keeps track of the various "Logger" objects. More...
Collaboration diagram for Gambit::Logging::LogMaster:
![]()
Detailed DescriptionLogging "controller" object Keeps track of the various "Logger" objects. Definition at line 49 of file logmaster.hpp. Constructor & Destructor Documentation◆ LogMaster() [1/2]
Default constructor. Logger class member function definitions. Logging "controller" object Keeps track of the individual logging objects. Definition at line 55 of file logmaster.cpp. std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 bool loggers_readyQ Flag to set whether loggers have been initialised not. Definition: logmaster.hpp:153 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178 bool separate_file_per_process Flag to store log messages for different processes in separate files. Definition: logmaster.hpp:159 int globlMaxThreads Max number of threads that could potentially be running. Definition: logmaster.hpp:169 ◆ LogMaster() [2/2]
Alternate constructor Mainly for testing; lets you pass in pre-built loggers and their tags. Alternate constructor. Definition at line 74 of file logmaster.cpp. std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 bool loggers_readyQ Flag to set whether loggers have been initialised not. Definition: logmaster.hpp:153 std::map< std::set< int >, BaseLogger * > loggers Map to identify loggers. Definition: logmaster.hpp:147 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178 bool separate_file_per_process Flag to store log messages for different processes in separate files. Definition: logmaster.hpp:159 int globlMaxThreads Max number of threads that could potentially be running. Definition: logmaster.hpp:169 ◆ ~LogMaster()
Destructor If errors happen before the inifile is loaded, we need to dump the log messages (that have been buffered) into a default log file. These will be log messages coming from initialisation code and so on. Definition at line 171 of file logmaster.cpp. References backlog, current_backend, current_module, emit_backlog(), Gambit::EOM, loggers, silenced, stream, streamtags, and Gambit::LogTags::warn. 174 // // LogMaster should not be destructed from within a parallel block. This check helps detect such a bug. 177 // // Raising an error from within the loggers within a parallel block probably will not end well, just use cout. 180 // std::cout << "rank "<<MPIrank<<": "<< LOCAL_INFO << ": Tried to destruct LogMaster from inside an omp parallel block! This should not be allowed to happen, please file a bug report." << std::endl; 187 // Check if there is anything in the output stream that has not been sent, and send it if there is 188 // (these messages will get backlogged because they are sent (ended) from a parallel block, but we are 197 *this <<"#### NO EOM RECEIVED FOR MESSAGE FROM THREAD ("<<i<<"): MESSAGE MAY BE INCOMPLETE ####"<<warn<<EOM; 208 for(std::map<std::set<int>,BaseLogger*>::iterator keyvalue = loggers.begin(); keyvalue != loggers.end(); ++keyvalue) 211 // (not sure if this is really needed, I think the message is in the operating systems domain by this point) std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 std::map< std::set< int >, BaseLogger * > loggers Map to identify loggers. Definition: logmaster.hpp:147 void emit_backlog(bool verbose) Print the backlogs to the default log file. Definition: logmaster.cpp:137 Definition: log_tags.hpp:37 const Logging::endofmessage EOM Explicit const instance of the end of message struct in Gambit namespace. Definition: logger.hpp:100 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178
Here is the call graph for this function:
![]() Member Function Documentation◆ disable()
Definition at line 363 of file logmaster.cpp. References loggers_readyQ, and silenced. Referenced by bail(), Gambit::gambit_core::bail(), main(), Gambit::gambit_core::process_primary_options(), and Gambit::gambit_core::run_diagnostic(). bool loggers_readyQ Flag to set whether loggers have been initialised not. Definition: logmaster.hpp:153
Here is the caller graph for this function:
![]() ◆ disabled()
Definition at line 376 of file logmaster.cpp. References silenced. ◆ emit_backlog()
Print the backlogs to the default log file. Definition at line 137 of file logmaster.cpp. References backlog, Gambit::Utils::construct_runtime_scratch(), Gambit::LogTags::def, empty_backlog(), Gambit::EOM, globlMaxThreads, loggers, and loggers_readyQ. Referenced by Gambit::gambit_core::run_diagnostic(), and ~LogMaster(). 148 if (verbose) *this<<"Logger backlog buffer not empty during LogMaster destruction; attempting to deliver unsent messages to the logs..."<<EOM; 149 // If LogMaster was never initialised, create a default log file to which the messages can be dumped. 157 if (verbose) std::cout<<std::endl<<"GAMBIT logger was never initialised. Outputting default log to "<<log_path<<std::endl; std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 bool loggers_readyQ Flag to set whether loggers have been initialised not. Definition: logmaster.hpp:153 std::map< std::set< int >, BaseLogger * > loggers Map to identify loggers. Definition: logmaster.hpp:147 EXPORT_SYMBOLS str construct_runtime_scratch(bool fail_on_mpi_uninitialised=true) Construct the path to the run-specific scratch directory This version is safe to call from a destruct... Definition: util_functions.cpp:67 void empty_backlog() Empty the backlog buffer to the 'send' function. Definition: logmaster.cpp:382 const Logging::endofmessage EOM Explicit const instance of the end of message struct in Gambit namespace. Definition: logger.hpp:100 int globlMaxThreads Max number of threads that could potentially be running. Definition: logmaster.hpp:169 Definition: log_tags.hpp:46
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ empty_backlog()
Empty the backlog buffer to the 'send' function. Definition at line 382 of file logmaster.cpp. References backlog, finalsend(), and globlMaxThreads. Referenced by emit_backlog(), initialise(), send(), and set_log_debug_messages(). 387 // // Raising an error from within the loggers within a parallel block probably will not end well, just use cout. 390 // std::cout << LOCAL_INFO << ": (rank "<<MPIrank<<") Tried to run empty_backlog() (in LogMaster) from inside an omp parallel block! This should not be possible, please file a bug report." << std::endl; std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 int globlMaxThreads Max number of threads that could potentially be running. Definition: logmaster.hpp:169 void finalsend(const Message &) Version of send function used by buffer dump; skips all the tag modification stuff. Definition: logmaster.cpp:574
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ enable()
Definition at line 370 of file logmaster.cpp. References silenced. Referenced by main().
Here is the caller graph for this function:
![]() ◆ entering_backend()Definition at line 633 of file logmaster.cpp. References current_backend, Gambit::LogTags::debug, Gambit::EOM, init_memory(), and Gambit::LogTags::logs. Referenced by Gambit::backend_functor< TYPE(*)(ARGS...), TYPE, ARGS... >::operator()(), Gambit::backend_functor< void(*)(ARGS...), void, ARGS... >::operator()(), Gambit::backend_functor< typename variadic_ptr< TYPE, ARGS... >::type, TYPE, ARGS... >::operator()(), and Gambit::backend_functor< typename variadic_ptr< void, ARGS... >::type, void, ARGS... >::operator()(). void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 Definition: log_tags.hpp:35 Definition: log_tags.hpp:48 const Logging::endofmessage EOM Explicit const instance of the end of message struct in Gambit namespace. Definition: logger.hpp:100
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ entering_module()Set the internal variables tracking which module and/or backend is currently running. Definition at line 620 of file logmaster.cpp. References current_module, and init_memory(). Referenced by Gambit::module_functor< ModelParameters >::calculate(), and Gambit::module_functor< void >::calculate(). void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ finalsend()Version of send function used by buffer dump; skips all the tag modification stuff. Definition at line 574 of file logmaster.cpp. References ignore, cyclic_include_check::includes, Gambit::Utils::is_disjoint(), loggers, Gambit::Logging::Message::message, Gambit::LogTags::repeat_to_cerr, Gambit::LogTags::repeat_to_cout, silenced, and Gambit::Logging::Message::tags. Referenced by empty_backlog(), and send(). 576 // Check the 'ignore' set; if any of the specified tags are in this set, then do nothing more, i.e. ignore the message. 597 for(std::map<std::set<int>,BaseLogger*>::iterator keyvalue = loggers.begin(); keyvalue != loggers.end(); ++keyvalue) std::map< std::set< int >, BaseLogger * > loggers Map to identify loggers. Definition: logmaster.hpp:147 Definition: log_tags.hpp:44 bool is_disjoint(const Set1 &set1, const Set2 &set2) Test if two sets are disjoint (works on any sorted std container I think) Definition: util_functions.hpp:163 std::set< int > ignore Global ignore set; if these tags/integers are seen, ignore messages containing them. Definition: logmaster.hpp:150 Definition: log_tags.hpp:43
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ init_memory()
Initialise dynamic memory required for thread safety. Definition at line 93 of file logmaster.cpp. References backlog, current_backend, current_module, globlMaxThreads, generate_raster_scan_settings::n, stream, and streamtags. Referenced by entering_backend(), entering_module(), input(), leaving_backend(), and leaving_module(). std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178 int globlMaxThreads Max number of threads that could potentially be running. Definition: logmaster.hpp:169
Here is the caller graph for this function:
![]() ◆ initialise() [1/3]
Function to construct loggers according to blueprint. Definition at line 227 of file logmaster.cpp. References Gambit::LogTags::debug, empty_backlog(), Gambit::EOM, ignore, LOCAL_INFO, log_debug_messages, loggers, loggers_readyQ, Gambit::logging_error(), Gambit::LogTags::logs, MPIrank, MPIsize, separate_file_per_process, and Gambit::Logging::str2tag(). Referenced by Gambit::IniParser::Parser::basicParse(), initialise(), Gambit::initialise_standalone_logs(), and main(). 241 // NOTE! Option to merge log files no longer exists. Concurrent write access is a nightmare. Log messages were 242 // being lost due to different processes overwriting each others data, and using the FileLock system doesn't 243 // help because the issue is the file pointer location. To fix that, files have to be closed and reopened 244 // constantly, which creates a lot of overhead. On top of this, it is very hard to overwrite old log files at the 245 // beginning of the run since we have to coordinate who creates the file at the beginning of the run, would have 249 // if(separate_file_per_process){ std::cout << "true; log messages will be stored in separate files for each MPI process (filename will be appended with underscore + MPI rank)"; } 250 // else{ std::cout << "false; log messages from separate MPI processes will be merged into one file (orchestrated by the OS; some mangling of concurrently written log messages may occur. Set this separate_file_per_process to 'True' if this mangling is a problem for you)";} 254 if(log_debug_messages) logmsg << "true; log messages tagged as 'Debug' WILL be logged. " << endl << "WARNING: This may lead to very large log files!"; 266 for(std::vector<std::pair< std::set<std::string>, std::string >>::iterator infopair = loggerinfo.begin(); 294 // If we didn't find the tag, raise an exception (probably means there was an error in the yaml file)
bool loggers_readyQ Flag to set whether loggers have been initialised not. Definition: logmaster.hpp:153 std::map< std::set< int >, BaseLogger * > loggers Map to identify loggers. Definition: logmaster.hpp:147 Definition: log_tags.hpp:35 Definition: log_tags.hpp:48 void empty_backlog() Empty the backlog buffer to the 'send' function. Definition: logmaster.cpp:382 const Logging::endofmessage EOM Explicit const instance of the end of message struct in Gambit namespace. Definition: logger.hpp:100 std::set< int > ignore Global ignore set; if these tags/integers are seen, ignore messages containing them. Definition: logmaster.hpp:150 bool separate_file_per_process Flag to store log messages for different processes in separate files. Definition: logmaster.hpp:159
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ initialise() [2/3]
Definition at line 333 of file logmaster.cpp. References initialise(). void initialise(std::vector< std::pair< std::set< std::string >, std::string >> &) Function to construct loggers according to blueprint. Definition: logmaster.cpp:227
Here is the call graph for this function:
![]() ◆ initialise() [3/3]
Definition at line 347 of file logmaster.cpp. References Gambit::Utils::delimiterSplit(), and initialise(). void initialise(std::vector< std::pair< std::set< std::string >, std::string >> &) Function to construct loggers according to blueprint. Definition: logmaster.cpp:227 EXPORT_SYMBOLS std::vector< str > delimiterSplit(str s, str delim) Split a string into a vector of strings, using a delimiter, and removing any whitespace around the de... Definition: util_functions.cpp:93
Here is the call graph for this function:
![]() ◆ input() [1/6]
Functions for stream input (actual stream operators which use these are defined in logger.cpp) Handle strings. Definition at line 671 of file logmaster.cpp. References init_memory(), and stream. Referenced by Gambit::Logging::operator<<(). void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ input() [2/6]Handle LogTag input. Definition at line 652 of file logmaster.cpp. References init_memory(), and streamtags. void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93
Here is the call graph for this function:
![]() ◆ input() [3/6]
Handle end of message character. Definition at line 659 of file logmaster.cpp. References init_memory(), send(), stream, and streamtags. void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178
Here is the call graph for this function:
![]() ◆ input() [4/6]Handle various stream manipulators. Definition at line 678 of file logmaster.cpp. References init_memory(), and stream. void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178
Here is the call graph for this function:
![]() ◆ input() [5/6]Definition at line 684 of file logmaster.cpp. References init_memory(), and stream. void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178
Here is the call graph for this function:
![]() ◆ input() [6/6]Definition at line 690 of file logmaster.cpp. References init_memory(), and stream. void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 std::ostringstream * stream Buffer variables needed for stream logging. Definition: logmaster.hpp:178
Here is the call graph for this function:
![]() ◆ leaving_backend()
Definition at line 640 of file logmaster.cpp. References current_backend, Gambit::LogTags::debug, Gambit::EOM, init_memory(), and Gambit::LogTags::logs. Referenced by leaving_module(), Gambit::backend_functor< TYPE(*)(ARGS...), TYPE, ARGS... >::operator()(), Gambit::backend_functor< void(*)(ARGS...), void, ARGS... >::operator()(), Gambit::backend_functor< typename variadic_ptr< TYPE, ARGS... >::type, TYPE, ARGS... >::operator()(), and Gambit::backend_functor< typename variadic_ptr< void, ARGS... >::type, void, ARGS... >::operator()(). void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93 Definition: log_tags.hpp:35 Definition: log_tags.hpp:48 const Logging::endofmessage EOM Explicit const instance of the end of message struct in Gambit namespace. Definition: logger.hpp:100
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ leaving_module()
Definition at line 626 of file logmaster.cpp. References current_module, init_memory(), and leaving_backend(). Referenced by Gambit::module_functor< ModelParameters >::calculate(), Gambit::module_functor< void >::calculate(), and Gambit::Likelihood_Container::main(). void init_memory() Initialise dynamic memory required for thread safety. Definition: logmaster.cpp:93
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() ◆ send() [1/16]
Main logging function (user-friendly overloaded version) Definition at line 407 of file logmaster.cpp. Referenced by input(), and send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the caller graph for this function:
![]() ◆ send() [2/16]Definition at line 413 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [3/16]Definition at line 420 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [4/16]
Definition at line 428 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [5/16]
Definition at line 437 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [6/16]
Definition at line 447 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [7/16]
stringstream versions.... Definition at line 461 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [8/16]Definition at line 467 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [9/16]
Definition at line 474 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [10/16]
Definition at line 482 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [11/16]
Definition at line 491 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [12/16]
Definition at line 501 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [13/16]Internal version of main logging function. Definition at line 516 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [14/16]Serious version of main logging function. Definition at line 533 of file logmaster.cpp. References backlog, current_backend, current_module, Gambit::LogTags::def, empty_backlog(), finalsend(), and loggers_readyQ. 535 // LogMaster keeps an internal map of all the logging objects, where the keys are sets of 'LogTag's, constructed according to the inifile. So to figure out where the message has to go, we just compare the "tags" to these keys; if any of these keys are a subset of our tags, then we send the message to that LogHub. 536 // Well almost. We have to seperate out the components first, because we can "send" a message to multiple components at once, but a direction command will never include two component tags (it is an error if it does). 546 // Automatically add the "def" (Default) tag so that the message definitely tries to go somewhere 552 //std::cout<<"current_module="<<current_module<<"; adding tag "<<tag2str()[current_module]<<std::endl; 557 //std::cout<<"current_backend="<<current_backend<<"; adding tag "<<tag2str()[current_backend]<<std::endl; std::deque< Message > * backlog Messages sent before logger objects are created will be buffered Same for messages sent while inside ... Definition: logmaster.hpp:183 bool loggers_readyQ Flag to set whether loggers have been initialised not. Definition: logmaster.hpp:153 void empty_backlog() Empty the backlog buffer to the 'send' function. Definition: logmaster.cpp:382 Definition: log_tags.hpp:46 void finalsend(const Message &) Version of send function used by buffer dump; skips all the tag modification stuff. Definition: logmaster.cpp:574
Here is the call graph for this function:
![]() ◆ send() [15/16]
stringstream overloads... Definition at line 610 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ send() [16/16]
Definition at line 615 of file logmaster.cpp. References send(). void send(const std::string &) Main logging function (user-friendly overloaded version) Definition: logmaster.cpp:407
Here is the call graph for this function:
![]() ◆ set_log_debug_messages()
Choose whether "Debug" tagged log messages will be ignored (i.e. not logged) Setters for behaviour options Must be used before "initialise" in order to have any effect Choose whether a separate log file for each MPI process is used NOW FORBIDDEN! Always must be true to avoid concurrent write access issues void set_separate_file_per_process(bool flag) {separate_file_per_process=flag;} Definition at line 138 of file logmaster.hpp. References empty_backlog(), and log_debug_messages. Referenced by Gambit::IniParser::Parser::basicParse(), and main().
Here is the call graph for this function:
![]()
Here is the caller graph for this function:
![]() Member Data Documentation◆ backlog
Messages sent before logger objects are created will be buffered Same for messages sent while inside omp parallel blocks. Definition at line 183 of file logmaster.hpp. Referenced by emit_backlog(), empty_backlog(), init_memory(), send(), and ~LogMaster(). ◆ current_backend
Definition at line 175 of file logmaster.hpp. Referenced by entering_backend(), init_memory(), leaving_backend(), send(), and ~LogMaster(). ◆ current_module
Variables that need to be threadsafe. int current_function; Can generalise to this if we discover that we really want to... Definition at line 174 of file logmaster.hpp. Referenced by entering_module(), init_memory(), leaving_module(), send(), and ~LogMaster(). ◆ globlMaxThreads
Max number of threads that could potentially be running. Definition at line 169 of file logmaster.hpp. Referenced by emit_backlog(), empty_backlog(), and init_memory(). ◆ ignore
Global ignore set; if these tags/integers are seen, ignore messages containing them. Definition at line 150 of file logmaster.hpp. Referenced by finalsend(), and initialise(). ◆ log_debug_messages
Flag to ignore Debug tagged messages. Definition at line 162 of file logmaster.hpp. Referenced by initialise(), and set_log_debug_messages(). ◆ loggers
Map to identify loggers. Definition at line 147 of file logmaster.hpp. Referenced by emit_backlog(), finalsend(), initialise(), and ~LogMaster(). ◆ loggers_readyQ
Flag to set whether loggers have been initialised not. Definition at line 153 of file logmaster.hpp. Referenced by disable(), emit_backlog(), initialise(), and send(). ◆ MPIrank
◆ MPIsize
Definition at line 166 of file logmaster.hpp. Referenced by initialise(). ◆ separate_file_per_process
Flag to store log messages for different processes in separate files. Definition at line 159 of file logmaster.hpp. Referenced by initialise(). ◆ silenced
Flag to silence logger. Definition at line 156 of file logmaster.hpp. Referenced by disable(), disabled(), enable(), finalsend(), and ~LogMaster(). ◆ stream
Buffer variables needed for stream logging. Definition at line 178 of file logmaster.hpp. Referenced by init_memory(), input(), and ~LogMaster(). ◆ streamtags
Definition at line 179 of file logmaster.hpp. Referenced by init_memory(), input(), and ~LogMaster(). The documentation for this class was generated from the following files:
|