log4cpp 1.1.3
Loading...
Searching...
No Matches
AppendersFactory.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
9#if !defined(h_738a42b1_1502_4483_948a_a69e7bbbee6a)
10#define h_738a42b1_1502_4483_948a_a69e7bbbee6a
11
12#include <string>
13#include <map>
14#include <memory>
15#include "Portability.hh"
16#include "Appender.hh"
17#include "FactoryParams.hh"
18
19namespace log4cpp
20{
22 {
23 public:
25 typedef std::auto_ptr<Appender> (*create_function_t)(const params_t& params);
26
27 static AppendersFactory& getInstance();
28 void registerCreator(const std::string& class_name, create_function_t create_function);
29 std::auto_ptr<Appender> create(const std::string& class_name, const params_t& params);
30 bool registered(const std::string& class_name) const;
31
32 private:
34
35 typedef std::map<std::string, create_function_t> creators_t;
36 typedef creators_t::const_iterator const_iterator;
37
38 creators_t creators_;
39 };
40}
41
42#endif // h_738a42b1_1502_4483_948a_a69e7bbbee6a
#define LOG4CPP_EXPORT
Definition Export.hh:26
Definition AppendersFactory.hh:22
FactoryParams params_t
Definition AppendersFactory.hh:24
Definition FactoryParams.hh:62
The top level namespace for all 'Log for C++' types and classes.
Definition AbortAppender.hh:16