Changes to attempt to silence bcc64x
[ACE_TAO.git] / ACE / ace / Log_Category.inl
bloba8314bcfaed647b1c7d231925029ac48e60c3984
1 // -*- C++ -*-
2 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
4 ACE_INLINE unsigned int
5 ACE_Log_Category::id() const
7   return id_;
10 ACE_INLINE const char*
11 ACE_Log_Category::name () const
13   return name_;
16 ACE_INLINE unsigned int
17 ACE_Log_Category_TSS::id() const
19   return category_->id_;
22 ACE_INLINE const char*
23 ACE_Log_Category_TSS::name () const
25   return category_->name_;
28 ACE_INLINE ACE_Log_Msg*
29 ACE_Log_Category_TSS::logger ()
31   return logger_;
34 /// Get the current ACE_Log_Priority mask.
35 ACE_INLINE u_long
36 ACE_Log_Category_TSS::priority_mask () const
38   return priority_mask_;
41 /// Set the ACE_Log_Priority mask, returns original mask.
42 ACE_INLINE u_long
43 ACE_Log_Category_TSS::priority_mask (u_long n_mask)
45   u_long o_mask = this->priority_mask_;
46   this->priority_mask_ = n_mask;
47   return o_mask;
49 /// Return true if the requested priority is enabled.
50 ACE_INLINE int
51 ACE_Log_Category_TSS::log_priority_enabled (ACE_Log_Priority log_priority)
53   return ACE_BIT_ENABLED (this->priority_mask_ |
54                           category_->priority_mask(),
55                           log_priority);
58 ACE_INLINE void
59 ACE_Log_Category_TSS::set (const char *file,
60                            int line,
61                            int op_status,
62                            int errnum)
64   logger_->set(file, line, op_status, errnum, logger_->restart (), logger_->msg_ostream (), logger_->msg_callback ());
67 /// These values are only actually set if the requested priority is
68 /// enabled.
69 ACE_INLINE
70 void ACE_Log_Category_TSS::conditional_set (const char *file,
71                                             int line,
72                                             int op_status,
73                                             int errnum)
75   logger_->conditional_set(file, line, op_status, errnum);
78 #if !defined (ACE_LACKS_VA_FUNCTIONS)
79 ACE_INLINE ssize_t
80 ACE_Log_Category_TSS::log (ACE_Log_Priority priority, const ACE_TCHAR *format_str, ...)
82   // Start of variable args section.
83   va_list argp;
85   va_start (argp, format_str);
87   ssize_t const result = this->log (format_str,
88                                     priority,
89                                     argp);
90   va_end (argp);
92   return result;
95 #if defined (ACE_HAS_WCHAR)
96 ACE_INLINE ssize_t
97 ACE_Log_Category_TSS::log (ACE_Log_Priority priority, const ACE_ANTI_TCHAR *format_str, ...)
99   // Start of variable args section.
100   va_list argp;
102   va_start (argp, format_str);
104   ssize_t const result = this->log (ACE_TEXT_ANTI_TO_TCHAR (format_str),
105                                     priority,
106                                     argp);
107   va_end (argp);
109   return result;
111 #endif /* ACE_HAS_WCHAR */
112 #else /* ACE_LACKS_VA_FUNCTIONS */
114 ACE_INLINE ssize_t
115 ACE_Log_Category_TSS::log (const ACE_Log_Formatter &formatter)
117   if (this->log_priority_enabled (formatter.priority ()))
118     return logger_->log (formatter);
120   return 0;
123 #endif /* ACE_LACKS_VA_FUNCTIONS */
126  * An alternative logging mechanism that makes it possible to
127  * integrate variable argument lists from other logging mechanisms
128  * into the ACE mechanism.
129  */
131 ACE_INLINE ssize_t
132 ACE_Log_Category_TSS::log (const ACE_TCHAR *format,
133                            ACE_Log_Priority priority,
134                            va_list argp)
136   if (this->log_priority_enabled (priority) == 0)
137     return 0;
138   return logger_->log(format, priority, argp, this);
141 ACE_INLINE ssize_t
142 ACE_Log_Category_TSS::log (ACE_Log_Record &log_record,
143                            int suppress_stderr)
145   return logger_->log(log_record, suppress_stderr);
148 ACE_INLINE int
149 ACE_Log_Category_TSS::log_hexdump (ACE_Log_Priority priority,
150                                    const char *buffer,
151                                    size_t size,
152                                    const ACE_TCHAR *text)
154   if (this->log_priority_enabled (priority) == 0)
155     return 0;
156   return logger_->log_hexdump(priority, buffer, size, text, this);
159 /// Get the current ACE_Log_Priority mask.
160 ACE_INLINE u_long
161 ACE_Log_Category::priority_mask () const
163   return priority_mask_;
166 /// Set the ACE_Log_Priority mask, returns original mask.
167 ACE_INLINE u_long
168 ACE_Log_Category::priority_mask (u_long n_mask)
170   u_long o_mask = this->priority_mask_;
171   this->priority_mask_ = n_mask;
172   return o_mask;
175 ACE_END_VERSIONED_NAMESPACE_DECL