28 #ifndef ICL_CORE_LOGGING_LOG_OUTPUT_STREAM_H_INCLUDED 29 #define ICL_CORE_LOGGING_LOG_OUTPUT_STREAM_H_INCLUDED 38 #define ICL_CORE_LOG_OUTPUT_STREAM_USE_FIXED_QUEUE 130 void changeLogFormat(
const char *format);
149 const char *filename,
int line,
const char *classname,
const char *objectname,
150 const char *
function,
const char *text);
178 void printConfiguration()
const;
181 #ifdef _IC_BUILDER_DEPRECATED_STYLE_ 198 const char *log_stream_description,
const char *filename,
199 int line,
const char *classname,
const char *objectname,
200 const char *
function,
const char *text)
247 const char *log_stream =
"",
const char *filename =
"",
249 const char *class_name =
"",
const char *object_name =
"",
const char *function_name =
"",
250 const char *message_text =
"");
266 bool use_worker_thread =
true);
274 #ifdef ICL_CORE_LOG_OUTPUT_STREAM_USE_FIXED_QUEUE 284 #ifdef ICL_CORE_LOG_OUTPUT_STREAM_USE_FIXED_QUEUE 285 void incrementIndex(
size_t& index);
286 bool isMessageQueueEmpty();
287 bool isMessageQueueFull();
292 #ifdef ICL_CORE_LOG_OUTPUT_STREAM_USE_FIXED_QUEUE 294 size_t m_message_queue_size;
295 size_t m_message_queue_read_index;
296 size_t m_message_queue_write_index;
328 : type(eT_TEXT), width(0)
353 virtual void pushImpl(
const LogMessage& log_message);
359 virtual void pushImpl(
const std::string& log_line);
367 void parseLogFormat(
const char *format);
Represents absolute times.
icl_core::TimeStamp timestamp
MessageQueue m_message_queue
const size_t cMAX_IDENTIFIER_LENGTH
#define ICL_CORE_VC_DEPRECATE_STYLE
const size_t cMAX_DESCRIPTION_LENGTH
Contains icl_logging::LoggingManager.
void changeTimeFormat(const char *format)
void setLogLevel(icl_core::logging::LogLevel log_level)
WorkerThread * m_worker_thread
#define ICL_CORE_GCC_DEPRECATE_STYLE_USE(arg)
Contains import/export definitions for the Win32 plattform.
LogOutputStream * m_output_stream
icl_core::logging::LogLevel getLogLevel() const
#define ICL_CORE_VC_DEPRECATE_STYLE_USE(arg)
icl_core::logging::LogLevel log_level
icl_core::List< LogFormatEntry > m_new_log_format
Manages the logging framework.
icl_core::List< LogFormatEntry > m_log_format
icl_core::logging::LogLevel m_log_level
Semaphore m_no_worker_thread_push_mutex
Contains constants used in icl_core::logging.
Contains icl_core::logging::Thread.
Implements a platform independent mutex.
virtual void onShutdown()
This is an output stream class for log messages.
Contains icl_logging::LogLevel.
Contains Interface base classes and base types.
void * memset(void *dest, int c, size_t count)
const char * m_time_format
static const icl_core::ThreadPriority m_default_worker_thread_priority
icl_core::Queue< LogMessage > MessageQueue
Defines an entry for the message queue.
Contains icl_core::Noncopyable.
#define ICL_CORE_LOGGING_IMPORT_EXPORT
#define cDEFAULT_LOG_SIZE
Implements processing the message queue in a separate thread.
static const icl_core::String m_default_log_format
#define ICL_CORE_GCC_DEPRECATE_STYLE
Contains global functions for memory manipulation, encapsulated into the icl_core::os namespace...
icl_core::String name() const
Contains icl_core::logging::Semaphore.