log4cpp  1.1.3
TriggeringEventEvaluatorFactory.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_dd233b8b_5c59_4956_9393_6581c95f9779)
9 #define h_dd233b8b_5c59_4956_9393_6581c95f9779
10 
11 #include <string>
12 #include <map>
13 #include <memory>
14 #include "Portability.hh"
16 #include "FactoryParams.hh"
17 
18 namespace log4cpp
19 {
21  {
22  public:
24  typedef std::auto_ptr<TriggeringEventEvaluator> (*create_function_t)(const params_t& params);
25 
26  static TriggeringEventEvaluatorFactory& getInstance();
27  void registerCreator(const std::string& class_name, create_function_t create_function);
28  std::auto_ptr<TriggeringEventEvaluator> create(const std::string& class_name, const params_t& params);
29  bool registered(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 #endif // h_dd233b8b_5c59_4956_9393_6581c95f9779
#define LOG4CPP_EXPORT
Definition: Export.hh:26
Definition: FactoryParams.hh:62
Definition: TriggeringEventEvaluatorFactory.hh:21
FactoryParams params_t
Definition: TriggeringEventEvaluatorFactory.hh:23
The top level namespace for all 'Log for C++' types and classes.
Definition: AbortAppender.hh:16