#include "ace/Log_Priority.h"
#include "ace/Default_Constants.h"
#include "ace/Basic_Types.h"
#include "ace/iosfwd.h"
#include "ace/Log_Record.inl"
Include dependency graph for Log_Record.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Classes | |
class | ACE_Log_Record |
Defines the structure of an ACE logging record. More... | |
Functions | |
ACE_Export int | operator>> (ACE_InputCDR &cdr, ACE_Log_Record &log_record) |
ACE_Export int | operator<< (ACE_OutputCDR &cdr, const ACE_Log_Record &log_record) |
Variables | |
ACE_BEGIN_VERSIONED_NAMESPACE_DECL class | ACE_Time_Value |
Definition in file Log_Record.h.
|
Definition at line 328 of file Log_Record.cpp. References ACE_OutputCDR::good_bit(), ACE_CDR::Long, ACE_CDR::LongLong, ACE_Log_Record::msg_data(), ACE_Log_Record::msg_data_len(), ACE_Log_Record::pid(), ACE_Time_Value::sec(), ACE_Log_Record::time_stamp(), ACE_Log_Record::type(), ACE_CDR::ULong, ACE_Time_Value::usec(), ACE_OutputCDR::write_char_array(), and ACE_OutputCDR::write_wchar_array().
00330 { 00331 // The written message length can't be more than 32 bits (ACE_CDR::ULong) 00332 // so reduce it here if needed. 00333 ACE_CDR::ULong u_msglen = 00334 ACE_Utils::truncate_cast<ACE_CDR::ULong> (log_record.msg_data_len ()); 00335 00336 // Insert each field from <log_record> into the output CDR stream. 00337 cdr << ACE_CDR::Long (log_record.type ()); 00338 cdr << ACE_CDR::Long (log_record.pid ()); 00339 cdr << ACE_CDR::LongLong (log_record.time_stamp ().sec ()); 00340 cdr << ACE_CDR::Long (log_record.time_stamp ().usec ()); 00341 cdr << u_msglen; 00342 #if defined (ACE_USES_WCHAR) 00343 cdr.write_wchar_array (log_record.msg_data (), u_msglen); 00344 #else 00345 cdr.write_char_array (log_record.msg_data (), u_msglen); 00346 #endif /* ACE_USES_WCHAR */ 00347 return cdr.good_bit (); 00348 } |
|
Definition at line 351 of file Log_Record.cpp. References ACE_NEW_RETURN, ACE_TCHAR, ACE_InputCDR::good_bit(), ACE_CDR::Long, ACE_CDR::LongLong, ACE_Log_Record::msg_data(), ACE_Log_Record::pid(), ACE_InputCDR::read_char_array(), ACE_InputCDR::read_wchar_array(), ACE_Log_Record::time_stamp(), ACE_Log_Record::type(), and ACE_CDR::ULong.
00353 { 00354 ACE_CDR::Long type; 00355 ACE_CDR::Long pid; 00356 ACE_CDR::LongLong sec; 00357 ACE_CDR::Long usec; 00358 ACE_CDR::ULong buffer_len; 00359 00360 // Extract each field from input CDR stream into <log_record>. 00361 if ((cdr >> type) && (cdr >> pid) && (cdr >> sec) && (cdr >> usec) 00362 && (cdr >> buffer_len)) { 00363 ACE_TCHAR *log_msg; 00364 ACE_NEW_RETURN (log_msg, ACE_TCHAR[buffer_len + 1], -1); 00365 auto_ptr<ACE_TCHAR> log_msg_p (log_msg); 00366 log_record.type (type); 00367 log_record.pid (pid); 00368 log_record.time_stamp (ACE_Time_Value (ACE_Utils::truncate_cast<time_t> (sec), 00369 usec)); 00370 #if defined (ACE_USES_WCHAR) 00371 cdr.read_wchar_array (log_msg, buffer_len); 00372 #else 00373 cdr.read_char_array (log_msg, buffer_len); 00374 #endif /* ACE_USES_WCHAR */ 00375 log_msg[buffer_len] = '\0'; 00376 if (-1 == log_record.msg_data (log_msg)) 00377 return -1; 00378 } 00379 return cdr.good_bit (); 00380 } |
|
Definition at line 34 of file Log_Record.h. |