UniSet
1.4.0
|
#include <DebugStream.h>
Классы | |
struct | debugstream_internal |
So that public parts of DebugStream does not need to know about filebuf. Подробнее... | |
Открытые члены | |
DebugStream (Debug::type t=Debug::NONE) | |
Constructor, sets the debug level to t. | |
DebugStream (char const *f, Debug::type t=Debug::NONE) | |
Constructor, sets the log file to f, and the debug level to t. | |
void | level (Debug::type t) |
Sets the debug level to t. | |
Debug::type | level () const |
Returns the current debug level. | |
void | addLevel (Debug::type t) |
Adds t to the current debug level. | |
void | delLevel (Debug::type t) |
Deletes t from the current debug level. | |
void | logFile (const std::string f) |
Sets the debugstreams' logfile to f. | |
std::string | getLogFile () |
bool | debugging (Debug::type t=Debug::ANY) const |
Returns true if t is part of the current debug level. | |
std::ostream & | debug (Debug::type t=Debug::ANY) |
std::ostream & | operator[] (Debug::type t) |
std::ostream & | to_end (Debug::type t) |
std::ostream & | operator() (Debug::type t) |
void | showDateTime (bool s) |
std::ostream & | print_date (Debug::type t, char brk='/') |
std::ostream & | print_time (Debug::type t, char brk=':') |
std::ostream & | print_datetime (Debug::type t) |
std::ostream & | pos (int x, int y) |
const DebugStream & | operator= (const DebugStream &r) |
DebugStream is a ostream intended for debug output. It has also support for a logfile. Debug output is output to cerr and if the logfile is set, to the logfile.
Example of Usage: DebugStream debug; debug.level(Debug::INFO); debug.debug(Debug::WARN) << "WARN\n"; debug[Debug::INFO] << "INFO\n"; debug << "Always\n";
Will output: INFO Always
If you want to have debug output from time critical code you should use this construct: if (debug.debugging(Debug::INFO)) { debug << "...debug output...\n"; }
To give debug info even if no debug (NONE) is requested: debug << "... always output ...\n";
To give debug output regardless of what debug level is set (!NONE): debug.debug() << "...on debug output...\n"; debug[Debug::ANY] << "...on debug output...\n";
To give debug output when a specific debug level is set (INFO): debug.debug(Debug::INFO) << "...info...\n"; debug[Debug::INFO] << "...info...\n";
To give debug output when either on of debug levels is set (INFO or CRIT): debug.debug(Debug::type(Debug::INFO | Debug::CRIT)) << "...info/crit...\n"; debug[Debug::type(Debug::INFO | Debug::CRIT)] << "...info/crit...\n";
DebugStream::DebugStream | ( | Debug::type | t = Debug::NONE | ) | [explicit] |
Constructor, sets the debug level to t.
DebugStream::DebugStream | ( | char const * | f, |
Debug::type | t = Debug::NONE |
||
) | [explicit] |
Constructor, sets the log file to f, and the debug level to t.
void DebugStream::addLevel | ( | Debug::type | t | ) | [inline] |
Adds t to the current debug level.
std::ostream & DebugStream::debug | ( | Debug::type | t = Debug::ANY | ) |
Returns the no-op stream if t is not part of the current debug level otherwise the real debug stream is used.
bool DebugStream::debugging | ( | Debug::type | t = Debug::ANY | ) | const [inline] |
Returns true if t is part of the current debug level.
Используется в ProxyManager::activateObject(), ObjectsManager::activateObject(), IONotifyController::askSensor(), IONotifyController::askState(), LT_Object::askTimer(), IONotifyController::askValue(), IOController::asRegistration(), UniSetObject::cleanMsgQueue(), ObjectsManager::disactivateObject(), IOController::dsRegistration(), ModbusClient::fileTransfer(), Restorer_XML::getConsumerInfo(), ORepHelpers::getContext(), ORepHelpers::getRootNamingContext(), UniSetTypes::Configuration::initConfiguration(), Restorer_XML::old_getConsumerInfo(), UniSetObject::processingMessage(), UniSetObject::push(), ModbusTCPMaster::query(), UniSetObject::receiveMessage(), ModbusServer::recv(), ModbusServer::replyFileTransfer(), ModbusServer::replySetDateTime(), ObjectsActivator::run(), ModbusClient::send(), ModbusServer::send(), ObjectsActivator::stop(), TDelay::tick() и ObjectsActivator::work().
void DebugStream::delLevel | ( | Debug::type | t | ) | [inline] |
Deletes t from the current debug level.
void DebugStream::level | ( | Debug::type | t | ) | [inline] |
Sets the debug level to t.
Debug::type DebugStream::level | ( | ) | const [inline] |
Returns the current debug level.
void DebugStream::logFile | ( | const std::string | f | ) |
Sets the debugstreams' logfile to f.
Перекрестные ссылки DebugStream::debugstream_internal::fbuf.
std::ostream & DebugStream::operator() | ( | Debug::type | t | ) |
Вывод продолжения логов (без даты и времени)
std::ostream& DebugStream::operator[] | ( | Debug::type | t | ) | [inline] |
This is an operator to give a more convenient use: dbgstream[Debug::INFO] << "Info!\n"; Вывод осуществляется с датой и временем (если они не отключены)
std::ostream& DebugStream::to_end | ( | Debug::type | t | ) | [inline] |
Вывод продолжения логов (без даты и времени)