log4cpp 1.1.3
Loading...
Searching...
No Matches
LayoutsFactory.hh
Go to the documentation of this file.
1/*
2 * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
3 * Copyright 2002, Bastiaan Bakker. All rights reserved.
4 *
5 * See the COPYING file for the terms of usage and distribution.
6 */
7
8#if !defined(h_409ac787_0acf_47ff_ac15_3e9024d40315)
9#define h_409ac787_0acf_47ff_ac15_3e9024d40315
10
11#include <string>
12#include <map>
13#include <memory>
14#include "Portability.hh"
15#include "Layout.hh"
16#include "FactoryParams.hh"
17
18namespace log4cpp
19{
21 {
22 public:
24 typedef std::auto_ptr<Layout> (*create_function_t)(const params_t& params);
25
26 static LayoutsFactory& getInstance();
27 void registerCreator(const std::string& class_name, create_function_t create_function);
28 std::auto_ptr<Layout> create(const std::string& class_name, const params_t& params);
29 bool registed(const std::string& class_name) const;
30
31 private:
33
34 typedef std::map<std::string, create_function_t> creators_t;
35 typedef creators_t::const_iterator const_iterator;
36
37 creators_t creators_;
38 };
39}
40
41
42#endif // h_409ac787_0acf_47ff_ac15_3e9024d40315
#define LOG4CPP_EXPORT
Definition Export.hh:26
Definition FactoryParams.hh:62
Definition LayoutsFactory.hh:21
FactoryParams params_t
Definition LayoutsFactory.hh:23
The top level namespace for all 'Log for C++' types and classes.
Definition AbortAppender.hh:16