BufferingAppender.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_ebd0ee89_622d_4af1_9a9d_d0e057debe86)
9 #define h_ebd0ee89_622d_4af1_9a9d_d0e057debe86
10 
13 #include <list>
14 #include <memory>
15 
16 namespace log4cpp
17 {
19  {
20  public:
21  BufferingAppender(const std::string name, unsigned long max_size, std::auto_ptr<Appender> sink,
22  std::auto_ptr<TriggeringEventEvaluator> evaluator);
23 
24  virtual void close() { sink_->close(); }
25 
26  bool getLossy() const { return lossy_; }
27  void setLossy(bool lossy) { lossy_ = lossy; }
28 
29  protected:
30  virtual void _append(const LoggingEvent& event);
31 
32  private:
33  typedef std::list<LoggingEvent> queue_t;
34 
35  queue_t queue_;
36  unsigned long max_size_;
37  std::auto_ptr<Appender> sink_;
38  std::auto_ptr<TriggeringEventEvaluator> evaluator_;
39  bool lossy_;
40 
41  void dump();
42  };
43 }
44 
45 #endif // h_ebd0ee89_622d_4af1_9a9d_d0e057debe86
std::list< LoggingEvent > queue_t
#define LOG4CPP_EXPORT
Definition: Export.hh:26
std::auto_ptr< TriggeringEventEvaluator > evaluator_
std::auto_ptr< Appender > sink_


log4cpp
Author(s): Stephen Roderick, Bastiaan Bakker, Cedric Le Goater, Steve Ostlind, Marcel Harkema, Walter Stroebel, Glenn Scott and Tony Cheung
autogenerated on Sun Jun 23 2019 19:10:00