| 
    ACE 8.0.0
    
   | 
 
Provides a categorized message logging abstraction. More...
#include <Log_Category.h>

Public Member Functions | |
| ACE_Log_Category (const char *name) | |
| ~ACE_Log_Category () | |
| unsigned int | id () const | 
| const char * | name () const | 
| ACE_Log_Category_TSS * | per_thr_obj () | 
| u_long | priority_mask () const | 
| Get the process ACE_Log_Priority mask.   | |
| u_long | priority_mask (u_long) | 
| Set the process ACE_Log_Priority mask, returns original mask.   | |
Static Public Member Functions | |
| static ACE_Log_Category & | ace_lib () | 
Private Member Functions | |
| ACE_Log_Category (const ACE_Log_Category &) | |
| ACE_Log_Category & | operator= (const ACE_Log_Category &) | 
Private Attributes | |
| const char * | name_ | 
| unsigned int | id_ | 
| u_long | priority_mask_ | 
| ACE_Thread_Mutex | keylock_ | 
| Avoid race conditions during initialization.   | |
| ACE_thread_key_t | key_ | 
Friends | |
| class | ACE_Log_Category_TSS | 
Provides a categorized message logging abstraction.
This class added another level of abstraction to ACE_Log_Msg to separate log messages into different categories. Logs in different categories can be independently enabled or disabled. However, they will all be affected by the priority_mask setting in ACE_Log_Msg. That is to say, if a given priority level is disabled using ACE_Log_Msg::priority_mask(), all messages of that priority level logged via any ACE_Log_Category object would also be disabled regardless of the priority_mask setting in the ACE_Log_Category object.
Each category can have a name which is fixed at construction. The name is not used for formatting the messages. However, it can be used by a message backend object for identification and reformat accordingly.
To log a message into a category. Create a new ACE_Log_Category and then use per_thr_obj() for logging. For example,
| ACE_Log_Category::ACE_Log_Category | ( | const char * | name | ) | 
Initialize the logger with a name.
Notice that ACE_Log_Category does not deep copy the passed name; therefore, you must keep the lifetime of name longer than the newly create ACE_Log_Category object. The rational for the design is to avoid static initialization problem when the ACE_Log_Category is created in static storage.
Default per-process priority mask By default, all priorities are enabled.
| ACE_Log_Category::~ACE_Log_Category | ( | ) | 
      
  | 
  private | 
      
  | 
  static | 
      
  | 
  inline | 
      
  | 
  private | 
| ACE_Log_Category_TSS * ACE_Log_Category::per_thr_obj | ( | ) | 
      
  | 
  inline | 
Get the process ACE_Log_Priority mask.
Get the current ACE_Log_Priority mask.
Set the process ACE_Log_Priority mask, returns original mask.
Set the ACE_Log_Priority mask, returns original mask.
      
  | 
  friend | 
      
  | 
  private | 
"First time in" flag. Key for the thread-specific error data.
      
  | 
  private | 
Avoid race conditions during initialization.
we couldn't directly use ACE_TSS because it would create circular dependency
      
  | 
  private | 
      
  | 
  private |