base_load.cc File Reference

module loader: handles the loading of components, that are installed as loadable modules - the <load/> configuration element More...

#include "jabberd.h"
#include <dlfcn.h>

Typedefs

typedef void(* base_load_init )(instance id, xmlnode x)

Functions

void base_load (pool p)

Variables

std::map< std::string, void * > base_load__cache
std::map< std::string,
std::map< std::string, void * > > 
preloaded_functions
int base_load_ref__count = 0


Detailed Description

module loader: handles the loading of components, that are installed as loadable modules - the <load/> configuration element


Typedef Documentation

typedef void(* base_load_init)(instance id, xmlnode x)

prototype for the initialization function of a component


Function Documentation

void base_load ( pool  p  ) 

init the module loader

register that we want to handle the <load/> element in the configuration

Parameters:
p memory pool used to register memory for the registration of handling the <load/> config element

References log_debug2, LOGT_DYNAMIC, register_config(), and ZONE.

Referenced by base_init().


Variable Documentation

std::map<std::string, void*> base_load__cache

map pointing from file names of shared objects to their loaded instances

counts loaded components. triggers shutdown if all components are unloaded

std::map<std::string, std::map<std::string, void*> > preloaded_functions

module init functions that have been loaded and not assigned to the instance


Generated on Wed Sep 10 01:59:47 2008 for jabberd14 by  doxygen 1.5.5