Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XFcLogger Class Reference

Data logger class. More...

List of all members.

Public Types

enum  XFCLOGFLAGS {
  XFCLOG_INFO = 1,
  XFCLOG_DATA = 2,
  XFCLOG_FLOW = 4,
  XFCLOG_ERR = 8,
  XFCLOG_WARN = 16,
  XFCLOG_CRIT = 32,
  XFCLOG_INDENT = 64,
  XFCLOG_UNDENT = 128,
  XFCLOG_ALL = 0xffffffff
}
 XFCLOGFLAGS can be used to mask out specific types of logging. More...


Public Member Functions

XFCIMPORT ~XFcLogger ()
 Destructor.


Static Public Member Functions

XFCIMPORT XFcLogger * create ()
 Static constructor.

XFCIMPORT void log (const CHAR *aTxt, XFCLOGFLAGS aFlag)
 Logs a string, with a specific log entry type.

XFCIMPORT void log (const CHAR8 *aTxt, INT32 aLength, XFCLOGFLAGS aFlag)
 Logs a data buffer as hex string values, with a specific log entry type.

XFCIMPORT void setMask (UINT32 aMask)
 Sets logging mask.

XFCIMPORT UINT32 getMask ()
 Returns current logging mask.

XFCIMPORT void setFileSizeLimit (UINT32 aSizeLimit)
 Sets the maximum size of the log file.

XFCIMPORT UINT32 getFileSizeLimit ()
 Returns the maximum size of the log file, in bytes.

XFCIMPORT void indent ()
 Indents log entries.

XFCIMPORT void undent ()
 Undents log entries.

XFCIMPORT void setLogLevel (INT aLevel)
 Sets current log level for program flow.

XFCIMPORT INT getLogLevel ()
 Returns current log level for program flow.


Protected Member Functions

UINT32 findThreadNum ()
 Finds the number of the current thread.

CHARcreateFileName (UINT32 aThreadId)
 Creates and returns a filename for a specific thread.

void writeTypeInfo (XFCLOGFLAGS aFlag, XFcFile *aFile)
 Writes the type header with the given flag.

void doLog (const CHAR *aTxt, XFCLOGFLAGS aFlag)
 Does the real logging.

void doLog (const CHAR8 *aTxt, INT32 aLength, XFCLOGFLAGS aFlag)
 Does the real logging.

void doSetMask (UINT32 aMask)
 Does the real set mask.

UINT32 doGetMask ()
 Does the real get mask.

void doSetFileSizeLimit (UINT32 aSizeLimit)
 Does the real setFileSizeLimit.

UINT32 doGetFileSizeLimit ()
 Does the real getFileSizeLimit.

void doIndent ()
 Does the real indent.

void doUndent ()
 Does the real undent.

void doSetLogLevel (INT aLevel)
 Does the real setLogLevel.

INT doGetLogLevel ()
 Does the real getLogLevel.


Protected Attributes

INT mNumThreads
 Number of threads.

UINT32 mThreadIds [MAX_NUM_LOGTHREADS]
 Thread ids.

INT mCurrentIndent [MAX_NUM_LOGTHREADS]
 The current indentation level.

INT32 mFileSizeLimit [MAX_NUM_LOGTHREADS]
 The current file size limit, default is -1 which means no limit.

UINT32 mLogFlags [MAX_NUM_LOGTHREADS]
 The current log flags (mask).

INT mLoggingStarted [MAX_NUM_LOGTHREADS]
 Is logging started.

INT mFileSizeLimitExceeded [MAX_NUM_LOGTHREADS]
 Is file size exceeded.

INT mLogLevel [MAX_NUM_LOGTHREADS]
 The current logging level for program flow.


Detailed Description

Data logger class.

:


Member Enumeration Documentation

enum XFcLogger::XFCLOGFLAGS
 

XFCLOGFLAGS can be used to mask out specific types of logging.

Enumeration values:
XFCLOG_INFO  Log general information.
XFCLOG_DATA  Log general data.
XFCLOG_FLOW  Log program flow information.
XFCLOG_ERR  Log an error.
XFCLOG_WARN  Log a warning.
XFCLOG_CRIT  Log a critical error.
XFCLOG_INDENT  Log indents.
XFCLOG_UNDENT  Log undents.
XFCLOG_ALL  Log everything.


Constructor & Destructor Documentation

XFCIMPORT XFcLogger::~XFcLogger  
 

Destructor.


Member Function Documentation

XFCIMPORT XFcLogger* XFcLogger::create   [static]
 

Static constructor.

CHAR* XFcLogger::createFileName UINT32    aThreadId [protected]
 

Creates and returns a filename for a specific thread.

Parameters:
aThreadId thread id to create the filename for.

UINT32 XFcLogger::doGetFileSizeLimit   [protected]
 

Does the real getFileSizeLimit.

INT XFcLogger::doGetLogLevel   [protected]
 

Does the real getLogLevel.

UINT32 XFcLogger::doGetMask   [protected]
 

Does the real get mask.

void XFcLogger::doIndent   [protected]
 

Does the real indent.

void XFcLogger::doLog const CHAR8   aTxt,
INT32    aLength,
XFCLOGFLAGS    aFlag
[protected]
 

Does the real logging.

void XFcLogger::doLog const CHAR   aTxt,
XFCLOGFLAGS    aFlag
[protected]
 

Does the real logging.

void XFcLogger::doSetFileSizeLimit UINT32    aSizeLimit [protected]
 

Does the real setFileSizeLimit.

void XFcLogger::doSetLogLevel INT    aLevel [protected]
 

Does the real setLogLevel.

void XFcLogger::doSetMask UINT32    aMask [protected]
 

Does the real set mask.

void XFcLogger::doUndent   [protected]
 

Does the real undent.

UINT32 XFcLogger::findThreadNum   [protected]
 

Finds the number of the current thread.

XFCIMPORT UINT32 XFcLogger::getFileSizeLimit   [static]
 

Returns the maximum size of the log file, in bytes.

XFCIMPORT INT XFcLogger::getLogLevel   [static]
 

Returns current log level for program flow.

XFCIMPORT UINT32 XFcLogger::getMask   [static]
 

Returns current logging mask.

XFCIMPORT void XFcLogger::indent   [static]
 

Indents log entries.

XFCIMPORT void XFcLogger::log const CHAR8   aTxt,
INT32    aLength,
XFCLOGFLAGS    aFlag
[static]
 

Logs a data buffer as hex string values, with a specific log entry type.

Parameters:
aTxt data buffer to log.
aLength length of the data buffer.
aFlag type of log entry.

XFCIMPORT void XFcLogger::log const CHAR   aTxt,
XFCLOGFLAGS    aFlag
[static]
 

Logs a string, with a specific log entry type.

Parameters:
aTxt string to log.
aFlag type of log entry.

XFCIMPORT void XFcLogger::setFileSizeLimit UINT32    aSizeLimit [static]
 

Sets the maximum size of the log file.

Parameters:
aSizeLimit new maximum size for the log, in bytes.

XFCIMPORT void XFcLogger::setLogLevel INT    aLevel [static]
 

Sets current log level for program flow.

XFCIMPORT void XFcLogger::setMask UINT32    aMask [static]
 

Sets logging mask.

Parameters:
aMask disabled logging types, see XFCLOGFLAGS.
See also:
XFCLOGFLAGS

XFCIMPORT void XFcLogger::undent   [static]
 

Undents log entries.

void XFcLogger::writeTypeInfo XFCLOGFLAGS    aFlag,
XFcFile   aFile
[protected]
 

Writes the type header with the given flag.

Parameters:
aFlag log entry type.
aFile file to write in.


Member Data Documentation

INT XFcLogger::mCurrentIndent[MAX_NUM_LOGTHREADS] [protected]
 

The current indentation level.

INT32 XFcLogger::mFileSizeLimit[MAX_NUM_LOGTHREADS] [protected]
 

The current file size limit, default is -1 which means no limit.

INT XFcLogger::mFileSizeLimitExceeded[MAX_NUM_LOGTHREADS] [protected]
 

Is file size exceeded.

UINT32 XFcLogger::mLogFlags[MAX_NUM_LOGTHREADS] [protected]
 

The current log flags (mask).

INT XFcLogger::mLoggingStarted[MAX_NUM_LOGTHREADS] [protected]
 

Is logging started.

INT XFcLogger::mLogLevel[MAX_NUM_LOGTHREADS] [protected]
 

The current logging level for program flow.

INT XFcLogger::mNumThreads [protected]
 

Number of threads.

UINT32 XFcLogger::mThreadIds[MAX_NUM_LOGTHREADS] [protected]
 

Thread ids.


   
X-Forge Documentation
Confidential
Copyright © 2002-2003 Fathammer
   
Documentation generated
with doxygen
by Dimitri van Heesch