ACE  6.1.0
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
ACE_Log_Record Class Reference

Defines the structure of an ACE logging record. More...

#include <Log_Record.h>

List of all members.

Public Types

enum  { MAXLOGMSGLEN = ACE_MAXLOGMSGLEN+1, ALIGN_WORDB = 8, VERBOSE_LEN = 128, MAXVERBOSELOGMSGLEN = VERBOSE_LEN + MAXLOGMSGLEN }

Public Member Functions

 ACE_Log_Record (void)
 ACE_Log_Record (ACE_Log_Priority lp, time_t time_stamp, long pid)
 ACE_Log_Record (ACE_Log_Priority lp, const ACE_Time_Value &time_stamp, long pid)
 ~ACE_Log_Record (void)
 Default dtor.
int print (const ACE_TCHAR host_name[], u_long verbose_flag, FILE *fp=stderr)
int print (const ACE_TCHAR host_name[], u_long verbose_flag, ACE_OSTREAM_TYPE &stream)
int format_msg (const ACE_TCHAR host_name[], u_long verbose_flag, ACE_TCHAR *verbose_msg)
ACE_UINT32 type (void) const
 Get the type of the Log_Record.
void type (ACE_UINT32)
 Set the type of the Log_Record.
u_long priority (void) const
void priority (u_long num)
long length (void) const
void length (long)
ACE_Time_Value time_stamp (void) const
 Get the time stamp of the Log_Record.
void time_stamp (const ACE_Time_Value &ts)
 Set the time stamp of the Log_Record.
long pid (void) const
 Get the process id of the Log_Record.
void pid (long)
 Set the process id of the Log_Record.
const ACE_TCHARmsg_data (void) const
 Get the message data of the Log_Record.
int msg_data (const ACE_TCHAR *data)
size_t msg_data_len (void) const
void dump (void) const
 Dump the state of an object.

Static Public Member Functions

static const ACE_TCHARpriority_name (ACE_Log_Priority p)
static void priority_name (ACE_Log_Priority p, const ACE_TCHAR *name)
 IMPORTANT: name must be a statically allocated const ACE_TCHAR*.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Member Functions

void round_up (void)
 Round up to the alignment restrictions.
 ACE_Log_Record (const ACE_Log_Record &rhs)
 disallow copying...
ACE_Log_Recordoperator= (const ACE_Log_Record &rhs)

Private Attributes

ACE_INT32 length_
ACE_UINT32 type_
 Type of logging record.
time_t secs_
 Time that the logging record was generated.
ACE_UINT32 usecs_
ACE_UINT32 pid_
 Id of process that generated the logging record.
ACE_TCHARmsg_data_
 Logging record data.
size_t msg_data_size_
 Allocated size of msg_data_ in ACE_TCHARs.

Detailed Description

Defines the structure of an ACE logging record.


Member Enumeration Documentation

anonymous enum
Enumerator:
MAXLOGMSGLEN 

Maximum size of a logging message.

ALIGN_WORDB 

Most restrictive alignment.

VERBOSE_LEN 

Size used by verbose mode. 20 (date) + 15 (host_name) + 10 (pid) + 10 (type) + 4 (@) ... + ? (progname)

MAXVERBOSELOGMSGLEN 

Maximum size of a logging message with the verbose headers.


Constructor & Destructor Documentation

ACE_Log_Record::ACE_Log_Record ( void  )

Create a Log_Record and set its priority, time stamp, and process id.

ACE_Log_Record::ACE_Log_Record ( ACE_Log_Priority  lp,
time_t  time_stamp,
long  pid 
)
ACE_Log_Record::ACE_Log_Record ( ACE_Log_Priority  lp,
const ACE_Time_Value time_stamp,
long  pid 
)
ACE_Log_Record::~ACE_Log_Record ( void  ) [inline]

Default dtor.

ACE_Log_Record::ACE_Log_Record ( const ACE_Log_Record rhs) [private]

disallow copying...


Member Function Documentation

void ACE_Log_Record::dump ( void  ) const

Dump the state of an object.

int ACE_Log_Record::format_msg ( const ACE_TCHAR  host_name[],
u_long  verbose_flag,
ACE_TCHAR verbose_msg 
)
long ACE_Log_Record::length ( void  ) const [inline]

Get the total length of the Log_Record, which includes the size of the various data member fields.

void ACE_Log_Record::length ( long  l) [inline]

Set the total length of the Log_Record, which needs to account for the size of the various data member fields.

const ACE_TCHAR * ACE_Log_Record::msg_data ( void  ) const [inline]

Get the message data of the Log_Record.

int ACE_Log_Record::msg_data ( const ACE_TCHAR data)

Set the message data of the record. If data is longer than the current msg_data_ buffer, a new msg_data_ buffer is allocated to fit. If such a reallocation faisl, this method returns -1, else 0.

size_t ACE_Log_Record::msg_data_len ( void  ) const [inline]

Get the size of the message data of the Log_Record, including a byte for the NUL.

ACE_Log_Record& ACE_Log_Record::operator= ( const ACE_Log_Record rhs) [private]
long ACE_Log_Record::pid ( void  ) const [inline]

Get the process id of the Log_Record.

void ACE_Log_Record::pid ( long  p) [inline]

Set the process id of the Log_Record.

int ACE_Log_Record::print ( const ACE_TCHAR  host_name[],
u_long  verbose_flag,
FILE *  fp = stderr 
)

Write the contents of the logging record to the appropriate FILE if the corresponding type is enabled.

int ACE_Log_Record::print ( const ACE_TCHAR  host_name[],
u_long  verbose_flag,
ACE_OSTREAM_TYPE &  stream 
)

Write the contents of the logging record to the appropriate stream if the corresponding type is enabled.

u_long ACE_Log_Record::priority ( void  ) const

Get the priority of the Log_Record <type_>. This is computed as the base 2 logarithm of <type_> (which must be a power of 2, as defined by the enums in ACE_Log_Priority).

void ACE_Log_Record::priority ( u_long  num)

Set the priority of the Log_Record <type_> (which must be a power of 2, as defined by the enums in ACE_Log_Priority).

const ACE_TCHAR * ACE_Log_Record::priority_name ( ACE_Log_Priority  p) [static]

Returns a character array with the string form of the ACE_Log_Priority parameter. This is used for the verbose printing format.

void ACE_Log_Record::priority_name ( ACE_Log_Priority  p,
const ACE_TCHAR name 
) [static]

IMPORTANT: name must be a statically allocated const ACE_TCHAR*.

void ACE_Log_Record::round_up ( void  ) [private]

Round up to the alignment restrictions.

ACE_Time_Value ACE_Log_Record::time_stamp ( void  ) const [inline]

Get the time stamp of the Log_Record.

void ACE_Log_Record::time_stamp ( const ACE_Time_Value ts) [inline]

Set the time stamp of the Log_Record.

ACE_UINT32 ACE_Log_Record::type ( void  ) const [inline]

Get the type of the Log_Record.

void ACE_Log_Record::type ( ACE_UINT32  t) [inline]

Set the type of the Log_Record.


Member Data Documentation

Declare the dynamic allocation hooks.

ACE_INT32 ACE_Log_Record::length_ [private]

Total length of the logging record in bytes. This field *must* come first in order for various IPC framing mechanisms to work correctly. In addition, the field must be an ACE_INT32 in order to be passed portably across platforms.

Logging record data.

Allocated size of msg_data_ in ACE_TCHARs.

ACE_UINT32 ACE_Log_Record::pid_ [private]

Id of process that generated the logging record.

time_t ACE_Log_Record::secs_ [private]

Time that the logging record was generated.

ACE_UINT32 ACE_Log_Record::type_ [private]

Type of logging record.

ACE_UINT32 ACE_Log_Record::usecs_ [private]

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