AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface
Classes | Namespaces | Macros
logger.hh File Reference

Detailed Description

Header file for a DRAMA 2 class which implements Logging.

 Modern C++ interface for DRAMA 2 logging.  This class is heavily
based on the GitLogger class from older generation DRAMA, but it
correctly adapted to modern C++11, fully supports logging from threads
and does need to support VxWorks.
Author
Tony Farrell, AAO $Revision$ $Date$ $Id$
#include "DitsTypes.h"
#include "Ers.h"
#include <iostream>
#include <fstream>
#include <map>
#include <thread>

Go to the source code of this file.

Classes

class  drama::logging::Logger
 Implementation of a Class supporting Logging within an AAO DRAMA Task. More...
 
class  drama::logging::LogStreamBuf
 Implement a streambuf sub-class that can write messages via the DRAMA Logger interface. More...
 

Namespaces

namespace  drama
 The drama namespace contains all the classes, types etc of the DRAMA 2 implementation.
 
namespace  drama::logging
 This namespace implements the DRAMA 2 Logging system.
 

Macros

#define D2LOG_ACTENT   0x04
 Log Action entry.
 
#define D2LOG_ACTEXIT   0x08
 Log Action exit messages.
 
#define D2LOG_ALL   0xFFFFFFFF
 Log everything.
 
#define D2LOG_ALWAYS   0x40000
 Always log the message.
 
#define D2LOG_ALWAYS_S   0x80000
 Always log the messages, including to the screen.
 
#define D2LOG_ARGS   0x1000
 Log entry and exit arguments if logging entry and exit.
 
#define D2LOG_COMMS   0x80
 Log DRAMA communications messages.
 
#define D2LOG_DEBUG   0x40
 Log Debug messages.
 
#define D2LOG_DRAMA2   0x2000
 DRAMA 2 events - thread events etc.
 
#define D2LOG_ERRORS   0x02
 Log Ers and action completion errors.
 
#define D2LOG_INST   0x10
 Log instument specific log messages.
 
#define D2LOG_MSG   0x20
 Log MsgOut messages.
 
#define D2LOG_STARTUP   0x01
 Log Task startup messages.
 
#define D2LOG_USER1   0x100
 User defined logging level 1.
 
#define D2LOG_USER2   0x200
 User defined logging level 2.
 
#define D2LOG_USER3   0x400
 User defined logging level 3.
 
#define D2LOG_USER4   0x800
 User defined logging level 4.