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,#if!defined(ACE_HAS_WINCE) 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)
void encode (void)
void decode (void)
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

FILE * fp
 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   ) 

Default dtor.

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

disallow copying...


Member Function Documentation

void ACE_Log_Record::decode ( void   ) 

Decode the Log_Record received from the network.

Deprecated:
The encode() and decode() metods are deprecated; please use the CDR insertion and extraction operators to properly encode and decode ACE_Log_Record objects.
void ACE_Log_Record::dump ( void   )  const

Dump the state of an object.

void ACE_Log_Record::encode ( void   ) 

Encode the Log_Record for transmission on the network.

Deprecated:
The encode() and decode() metods are deprecated; please use the CDR insertion and extraction operators to properly encode and decode ACE_Log_Record objects.
int ACE_Log_Record::format_msg ( const ACE_TCHAR  host_name[],
u_long  verbose_flag,
ACE_TCHAR verbose_msg 
)
void ACE_Log_Record::length ( long  l  ) 

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

long ACE_Log_Record::length ( void   )  const

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

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.

const ACE_TCHAR * ACE_Log_Record::msg_data ( void   )  const

Get the message data of the <Log_Record>.

size_t ACE_Log_Record::msg_data_len ( void   )  const

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]
void ACE_Log_Record::pid ( long  p  ) 

Set the process id of the <Log_Record>.

long ACE_Log_Record::pid ( void   )  const

Get the process id of the <Log_Record>.

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.

int ACE_Log_Record::print ( const ACE_TCHAR  host_name[],
u_long  verbose_flag,
#if!defined(ACE_HAS_WINCE) FILE *  fp = stderr 
)

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

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>).

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_name ( ACE_Log_Priority  p,
const ACE_TCHAR name 
) [static]

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

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::round_up ( void   )  [private]

Round up to the alignment restrictions.

void ACE_Log_Record::time_stamp ( const ACE_Time_Value ts  ) 

Set the time stamp of the <Log_Record>.

ACE_Time_Value ACE_Log_Record::time_stamp ( void   )  const

Get the time stamp of the <Log_Record>.

void ACE_Log_Record::type ( ACE_UINT32  t  ) 

Set the type of the <Log_Record>.

ACE_UINT32 ACE_Log_Record::type ( void   )  const

Get 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

Generated on Fri Sep 11 03:57:02 2009 for ACE by  doxygen 1.6.1