Main Page Modules Class Hierarchy Data Structures File List Data Fields Globals Related Pages

# pvlogger_registry.h

Go to the documentation of this file.

    00001 #ifndef PVLOGGER_REGISTRY_H_INCLUDED
    00002 #define PVLOGGER_REGISTRY_H_INCLUDED
    00003
    00004 #ifndef PVLOGGER_H_INCLUDED
    00005 #include "pvlogger.h"
    00006 #endif
    00007
    00008 #ifndef OSCL_TAGTREE_H_INCLUDED
    00009 #include "oscl_tagtree.h"
    00010 #endif
    00011
    00025 class PVLoggerRegistry
    00026 {
    00027     public:
    00028
    00029         typedef PVLogger::log_level_type log_level_type;
    00030         typedef PVLogger::alloc_type alloc_type;
    00031
    00036         OSCL_IMPORT_REF static PVLoggerRegistry* GetPVLoggerRegistry();
    00037
    00042         OSCL_IMPORT_REF PVLoggerRegistry();
    00043
    00048         OSCL_IMPORT_REF virtual ~PVLoggerRegistry();
    00049
    00062         OSCL_IMPORT_REF PVLogger *GetPVLoggerObject(const char* tagIn);
    00063
    00074         OSCL_IMPORT_REF PVLogger *CreatePVLogger(const char* tagIn, log_level_type level, bool oAppenderInheritance);
    00075
    00085         OSCL_IMPORT_REF bool SetNodeLogLevelExplicit(char* tagIn, log_level_type level);
    00086
    00096         OSCL_IMPORT_REF void SetNodeLogLevelExplicit(Oscl_TagTree<PVLogger*, alloc_type>::node_type* node, log_level_type level);
    00097
    00098     private:
    00099 #if (PVLOGGER_ENABLE)
    00100         Oscl_TAlloc<PVLogger, alloc_type> _pvloggerAlloc;
    00101         Oscl_TagTree<PVLogger*, alloc_type> _loggerTree;
    00102 #endif
    00103 };
    00104
    00105 #endif // PVLOGGER_REGISTRY_H_INCLUDED
    00106