Homepage Demos Overview Downloads Tutorials Reference
Credits
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members | Related Pages | Search

EventLogger Class Reference

#include <EventLogger.h>

Inheritance diagram for EventLogger:

Inheritance graph
[legend]
List of all members.

Detailed Description

allows logging of events to the console or a file

Definition at line 10 of file EventLogger.h.

Public Member Functions

 EventLogger ()
 constructor

virtual ControlBasedoSelect ()
 opens a custom (embedded) menu to toggle individual EGIDs

virtual void refresh ()
 called when the child has died and this control should refresh its display

virtual void processEvent (const EventBase &event)
 sends all events received to stdout and/or logfile


Protected Member Functions

void setStatus (unsigned int i, char c)
 sets the status char of slot i to c

void checkLogFile ()
 checks to see if logfilePath differs from the StringInputControl's value and switches it if it is


Protected Attributes

std::string logfilePath
 address of the logfile, if any (empty string is no logfile)

std::ofstream logfile
 if a filename is given, events are logged to here

unsigned int verbosity
 controls the level of verbosity - currently 0 through 2


Constructor & Destructor Documentation

EventLogger::EventLogger  ) 
 

constructor

Definition at line 10 of file EventLogger.cc.

References ControlBase::ControlBase(), EventBase::EventGeneratorNames, EventBase::numEGIDs, ControlBase::pushSlot(), and verbosity.


Member Function Documentation

void EventLogger::checkLogFile  )  [protected]
 

checks to see if logfilePath differs from the StringInputControl's value and switches it if it is

Definition at line 95 of file EventLogger.cc.

References ASSERTRET, StringInputControl::getLastInput(), ControlBase::getName(), logfile, logfilePath, EventBase::numEGIDs, ControlBase::options, ControlBase::setName(), and setStatus().

ControlBase * EventLogger::doSelect  )  [virtual]
 

opens a custom (embedded) menu to toggle individual EGIDs

Reimplemented from ControlBase.

Definition at line 21 of file EventLogger.cc.

References EventRouter::addListener(), config, Config::controller, erouter, EventBase::EventGeneratorID_t, ControlBase::hilights, logfile, EventBase::numEGIDs, ControlBase::options, SoundManager::PlayFile(), refresh(), EventRouter::removeListener(), Config::controller_config::select_snd, setStatus(), and sndman.

void EventLogger::processEvent const EventBase event  )  [virtual]
 

sends all events received to stdout and/or logfile

Implements EventListener.

Definition at line 62 of file EventLogger.cc.

References EventBase::activateETID, checkLogFile(), EventBase::deactivateETID, EventBase::getDuration(), EventBase::getMagnitude(), EventBase::getName(), EventBase::getTimeStamp(), EventBase::getTypeID(), logfile, EventBase::numEGIDs, EventBase::numETIDs, ControlBase::options, EventBase::statusETID, and verbosity.

void EventLogger::refresh  )  [virtual]
 

called when the child has died and this control should refresh its display

Reimplemented from ControlBase.

Definition at line 56 of file EventLogger.cc.

References checkLogFile(), and ControlBase::refresh().

void EventLogger::setStatus unsigned int  i,
char  c
[protected]
 

sets the status char of slot i to c

Definition at line 89 of file EventLogger.cc.

References ControlBase::options.


Member Data Documentation

std::ofstream EventLogger::logfile [protected]
 

if a filename is given, events are logged to here

Definition at line 34 of file EventLogger.h.

std::string EventLogger::logfilePath [protected]
 

address of the logfile, if any (empty string is no logfile)

Definition at line 31 of file EventLogger.h.

unsigned int EventLogger::verbosity [protected]
 

controls the level of verbosity - currently 0 through 2

Definition at line 37 of file EventLogger.h.


The documentation for this class was generated from the following files:
Tekkotsu v1.4
Generated Sat Jul 19 00:08:56 2003 by Doxygen 1.3.2