Public Member Functions | Static Public Member Functions | Private Types | Private Attributes | Static Private Attributes

ACE_Trace Class Reference

A C++ trace facility that keeps track of which methods are entered and exited. More...

#include <Trace.h>

List of all members.

Public Member Functions

 ACE_Trace (const ACE_TCHAR *n, int line=0, const ACE_TCHAR *file=ACE_TEXT(""))
 ~ACE_Trace (void)
void dump (void) const
 Dump the state of an object.

Static Public Member Functions

static bool is_tracing (void)
 Determine if tracing is enabled or not.
static void start_tracing (void)
 Enable the tracing facility.
static void stop_tracing (void)
 Disable the tracing facility.
static void set_nesting_indent (int indent)
 Change the nesting indentation level.
static int get_nesting_indent (void)
 Get the nesting indentation level.

Private Types

enum  { DEFAULT_INDENT = 3, DEFAULT_TRACING = 1 }
 

Default values.

More...

Private Attributes

const ACE_TCHARname_
 Name of the method we are in.

Static Private Attributes

static int nesting_indent_
 Keeps track of how far to indent per trace call.
static bool enable_tracing_
 Is tracing enabled?

Detailed Description

A C++ trace facility that keeps track of which methods are entered and exited.

This class uses C++ constructors and destructors to automate the ACE_Trace nesting. In addition, thread-specific storage is used to enable multiple threads to work correctly.


Member Enumeration Documentation

anonymous enum [private]

Default values.

Enumerator:
DEFAULT_INDENT 
DEFAULT_TRACING 

Constructor & Destructor Documentation

ACE_Trace::ACE_Trace ( const ACE_TCHAR n,
int  line = 0,
const ACE_TCHAR file = ACE_TEXT ("") 
)

Perform the first part of the trace, which prints out the string N, the LINE, and the ACE_FILE as the function is entered.

ACE_Trace::~ACE_Trace ( void   ) 

Perform the second part of the trace, which prints out the NAME as the function is exited.


Member Function Documentation

void ACE_Trace::dump ( void   )  const

Dump the state of an object.

int ACE_Trace::get_nesting_indent ( void   )  [static]

Get the nesting indentation level.

bool ACE_Trace::is_tracing ( void   )  [static]

Determine if tracing is enabled or not.

void ACE_Trace::set_nesting_indent ( int  indent  )  [static]

Change the nesting indentation level.

void ACE_Trace::start_tracing ( void   )  [static]

Enable the tracing facility.

void ACE_Trace::stop_tracing ( void   )  [static]

Disable the tracing facility.


Member Data Documentation

bool ACE_Trace::enable_tracing_ [static, private]

Is tracing enabled?

const ACE_TCHAR* ACE_Trace::name_ [private]

Name of the method we are in.

int ACE_Trace::nesting_indent_ [static, private]

Keeps track of how far to indent per trace call.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines