Poster of Linux kernelThe best gift for a Linux geek
layout.h

layout.h

Section: log4c (3) Updated: Tue May 3 2011
Local index Up
 

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_tlog4c 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.


 

Index

NAME
SYNOPSIS
Data Structures
Defines
Typedefs
Functions
Detailed Description
Define Documentation
#define log4c_layout_type_define(a_type)Helper macro to define static layout types.
Typedef Documentation
typedef struct __log4c_layout log4c_layout_tlog4c layout class
typedef struct log4c_layout_type log4c_layout_type_t
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.
LOG4C_API log4c_layout_t* log4c_layout_get (const char *a_name)Get a pointer to an existing layout.
LOG4C_API const char* log4c_layout_get_name (const log4c_layout_t *a_layout)Parameters:
LOG4C_API const log4c_layout_type_t* log4c_layout_get_type (const log4c_layout_t *a_layout)Parameters:
LOG4C_API void* log4c_layout_get_udata (const log4c_layout_t *a_layout)Parameters:
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
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
LOG4C_API void* log4c_layout_set_udata (log4c_layout_t *a_layout, void *a_udata)sets the 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.
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.
LOG4C_API void log4c_layout_types_print (FILE *fp)prints all the current registered layout types on a stream
Author

This document was created by man2html, using the manual pages.
Time: 07:57:09 GMT, June 15, 2011