Main Page | Data Structures | File List | Globals | Related Pages

appender.h File Reference

Implement this interface for your own strategies for printing log statements. More...

#include <log4c/defs.h>
#include <log4c/layout.h>
#include <stdio.h>

Include dependency graph for appender.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Data Structures

struct  log4c_appender_type
 log4c appender type class More...

Defines

#define log4c_appender_type_define(a_type)

Typedefs

typedef __log4c_appender log4c_appender_t
typedef log4c_appender_type log4c_appender_type_t
 log4c appender type class

Functions

const log4c_appender_type_tlog4c_appender_type_get (const char *a_name)
const log4c_appender_type_tlog4c_appender_type_set (const log4c_appender_type_t *a_type)
log4c_appender_tlog4c_appender_get (const char *a_name)
log4c_appender_tlog4c_appender_new (const char *a_name)
void log4c_appender_delete (log4c_appender_t *a_appender)
const char * log4c_appender_get_name (const log4c_appender_t *a_appender)
const log4c_appender_type_tlog4c_appender_get_type (const log4c_appender_t *a_appender)
const log4c_layout_tlog4c_appender_get_layout (const log4c_appender_t *a_appender)
void * log4c_appender_get_udata (const log4c_appender_t *a_appender)
const log4c_appender_type_tlog4c_appender_set_type (log4c_appender_t *a_appender, const log4c_appender_type_t *a_type)
void * log4c_appender_set_udata (log4c_appender_t *a_appender, void *a_udata)
const log4c_layout_tlog4c_appender_set_layout (log4c_appender_t *a_appender, const log4c_layout_t *a_layout)
int log4c_appender_open (log4c_appender_t *a_appender)
int log4c_appender_append (log4c_appender_t *a_appender, log4c_logging_event_t *a_event)
int log4c_appender_close (log4c_appender_t *a_appender)
void log4c_appender_print (const log4c_appender_t *a_appender, FILE *a_stream)


Detailed Description

Implement this interface for your own strategies for printing log statements.

Todo:
the appender interface needs a better configuration system depending on the layout type. The udata field is a just a trick.

Define Documentation

#define log4c_appender_type_define a_type   ) 
 

Helper macro to define static appender types.

Parameters:
a_type the log4c_appender_type_t object to define
Warning:
needs GCC support


Typedef Documentation

typedef struct __log4c_appender log4c_appender_t
 

log4c appender class

typedef struct log4c_appender_type log4c_appender_type_t
 

log4c appender type class

Attributes description:

  • name appender type name
  • open
  • append
  • close


Function Documentation

int log4c_appender_append log4c_appender_t this,
log4c_logging_event_t a_event
 

Bug:
is this the right place to open an appender ?

int log4c_appender_close log4c_appender_t a_appender  ) 
 

closes the appender

Parameters:
a_appender the log4c_appender_t object

void log4c_appender_delete log4c_appender_t a_appender  ) 
 

Destructor for log4c_appender_t.

log4c_appender_t* log4c_appender_get const char *  a_name  ) 
 

Get a pointer to an existing appender.

Parameters:
a_name the name of the appender to return.
Returns:
a pointer to an existing appender, or NULL if no appender with the specfied name exists.

const log4c_layout_t* log4c_appender_get_layout const log4c_appender_t a_appender  ) 
 

Parameters:
a_appender the log4c_appender_t object
Returns:
the appender layout

const char* log4c_appender_get_name const log4c_appender_t a_appender  ) 
 

Parameters:
a_appender the log4c_appender_t object
Returns:
the appender name

const log4c_appender_type_t* log4c_appender_get_type const log4c_appender_t a_appender  ) 
 

Parameters:
a_appender the log4c_appender_t object
Returns:
the appender operations

void* log4c_appender_get_udata const log4c_appender_t a_appender  ) 
 

Parameters:
a_appender the log4c_appender_t object
Returns:
the appender user data

log4c_appender_t* log4c_appender_new const char *  a_name  ) 
 

Constructor for log4c_appender_t.

int log4c_appender_open log4c_appender_t a_appender  ) 
 

opens the appender.

Parameters:
a_appender the log4c_appender_t object

void log4c_appender_print const log4c_appender_t a_appender,
FILE *  a_stream
 

prints the appender on a stream

Parameters:
a_appender the log4c_appender_t object
a_stream the stream

const log4c_layout_t* log4c_appender_set_layout log4c_appender_t a_appender,
const log4c_layout_t a_layout
 

sets the appender layout

Parameters:
a_appender the log4c_appender_t object
a_layout the new appender layout
Returns:
the previous appender layout

const log4c_appender_type_t* log4c_appender_set_type log4c_appender_t a_appender,
const log4c_appender_type_t a_type
 

sets the appender type

Parameters:
a_appender the log4c_appender_t object
a_type the new appender type
Returns:
the previous appender type

void* log4c_appender_set_udata log4c_appender_t a_appender,
void *  a_udata
 

sets the appender user data

Parameters:
a_appender the log4c_appender_t object
a_udata the new appender user data
Returns:
the previous appender user data

const log4c_appender_type_t* log4c_appender_type_get const char *  a_name  ) 
 

Get a pointer to an existing appender type.

Parameters:
a_name the name of the appender type to return.
Returns:
a pointer to an existing appender type, or NULL if no appender type with the specified name exists.

const log4c_appender_type_t* log4c_appender_type_set const log4c_appender_type_t a_type  ) 
 

Set an appender type.

Parameters:
a_type a pointer to the new appender type to set.
Returns:
a pointer to the previous appender type of same name.


Generated on Sat Dec 11 11:03:57 2004 for log4c by  doxygen 1.3.9.1