Provided by: liblog4c-doc_1.2.1-3_all
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 typedef struct log4c_layout_type log4c_layout_type_t log4c layout type class 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 typedef struct log4c_layout_type log4c_layout_type_t log4c layout type class Attributes description: • name layout type name • format
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.