layout.h(3)
NAME
layout.h - Interface for user specific layout format of
log4c_logging_event events.
SYNOPSIS
#include <log4c/defs.h> #include <log4c/logging_event.h> #include <stdio.h> Data Structures struct log4c_layout_type log4c layout type class Defines #define log4c_layout_type_define(a_type) Typedefs typedef struct __log4c_layout log4c_layout_t Functions LOG4C_API const log4c_layout_type_t * log4c_layout_type_get (const char *a_name) LOG4C_API const log4c_layout_type_t * log4c_layout_type_set (const log4c_layout_type_t *a_type) LOG4C_API log4c_layout_t * log4c_layout_get (const char *a_name) LOG4C_API log4c_layout_t * log4c_layout_new (const char *a_name) LOG4C_API void log4c_layout_delete (log4c_layout_t *a_layout) LOG4C_API const char * log4c_layout_get_name (const log4c_layout_t *a_layout) LOG4C_API const log4c_layout_type_t * log4c_layout_get_type (const log4c_layout_t *a_layout) LOG4C_API const log4c_layout_type_t * log4c_layout_set_type (log4c_layout_t *a_layout, const log4c_layout_type_t *a_type) LOG4C_API void * log4c_layout_get_udata (const log4c_layout_t *a_layout) LOG4C_API void * log4c_layout_set_udata (log4c_layout_t *a_layout, void *a_udata) LOG4C_API const char * log4c_layout_format (const log4c_layout_t *a_layout, const log4c_logging_event_t *a_event) LOG4C_API void log4c_layout_print (const log4c_layout_t *a_layout, FILE *a_stream) LOG4C_API void log4c_layout_types_print (FILE *fp)
Detailed Description
Interface for user specific layout format of log4c_logging_event
events.
- Todo
- the layout interface needs a better configuration system depending on the layout type. The udata field is a just a trick.
- Todo
- a pattern layout would be welcomed !!
Define Documentation
- #define log4c_layout_type_define(a_type)
- Helper macro to define static layout types.
- Parameters:
a_type the log4c_layout_type_t object to define
- Warning:
needs GCC support: otherwise this macro does nothing
- Deprecated
This macro, and the static initialialization of layouts in general, is deprecated. Use rather the log4c_layout_type_set() function to initialize your appenders before calling log4c_init()
Typedef Documentation
- typedef struct __log4c_layout log4c_layout_t
- log4c layout class
Function Documentation
- LOG4C_API void log4c_layout_delete (log4c_layout_t * a_layout)
- Destructor for layout.
- LOG4C_API const char* log4c_layout_format (const log4c_layout_t * a_layout,
- const log4c_logging_event_t * a_event) format a log4c_logging_event events to a string.
- Parameters:
a_layout the log4c_layout_t object
a_event a logging_event_t object - Returns:
an appendable string.
- LOG4C_API log4c_layout_t* log4c_layout_get (const char * a_name)
- Get a pointer to an existing layout.
- Parameters:
a_name the name of the layout to return.
- Returns:
a pointer to an existing layout, or NULL if no layout with the
specfied name exists. - LOG4C_API const char* log4c_layout_get_name (const log4c_layout_t *
- a_layout)
Parameters:a_layout the log4c_layout_t object - Returns:
the layout name
- LOG4C_API const log4c_layout_type_t* log4c_layout_get_type (const
- log4c_layout_t * a_layout)
Parameters:
a_layout the log4c_layout_t object
- Returns:
a log4c_layout_type_t object
- LOG4C_API void* log4c_layout_get_udata (const log4c_layout_t * a_layout)
- Parameters:
a_layout the log4c_layout_t object
- Returns:
the layout user data
- LOG4C_API log4c_layout_t* log4c_layout_new (const char * a_name)
- Constructor for layout.
- LOG4C_API void log4c_layout_print (const log4c_layout_t * a_layout, FILE *
- a_stream)
prints the layout on a stream - Parameters:
a_layout the log4c_layout_t object
a_stream the stream - LOG4C_API const log4c_layout_type_t* log4c_layout_set_type (log4c_layout_t
- * a_layout, const log4c_layout_type_t * a_type) sets the layout type
- Parameters:
a_layout the log4c_layout_t object
a_type the new layout type - Returns:
the previous layout type
- LOG4C_API void* log4c_layout_set_udata (log4c_layout_t * a_layout, void *
- a_udata)
sets the layout user data - Parameters:
a_layout the log4c_layout_t object
a_udata the new layout user data - Returns:
the previous layout user data
- LOG4C_API const log4c_layout_type_t* log4c_layout_type_get (const char *
- a_name)
Get a pointer to an existing layout type. - Parameters:
a_name the name of the layout type to return.
- Returns:
a pointer to an existing layout type, or NULL if no layout type
with the specified name exists. - LOG4C_API const log4c_layout_type_t* log4c_layout_type_set (const
- log4c_layout_type_t * a_type)
Use this function to register a layout type with log4c. Once this is
done you may refer to this type by name both programatically and in the log4c configuration file. - Parameters:
a_type a pointer to the new layout type to set.
- Returns:
a pointer to the previous layout type of same name.
- Example code fragment:
const log4c_layout_type_t log4c_layout_type_xml = {'s13_xml',
xml_format,};log4c_layout_type_set(&log4c_layout_type_xml); - LOG4C_API void log4c_layout_types_print (FILE * fp)
- prints all the current registered layout types on a stream
- Parameters:
fp the stream
Author
- Generated automatically by Doxygen for log4c from the source code.