OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
TraceComponent.h
Go to the documentation of this file.
1 #ifndef __TRACE_COMPONENT_H__
2 #define __TRACE_COMPONENT_H__
3 
4 #include <string>
5 #include <sstream>
6 
8 
9 public:
10 
11  TraceComponent(std::string name) : name_(name)
12  {}
13 
15  {}
16 
17  virtual void execute(std::ostringstream &dump) = 0;
18 
19  void prepend(std::ostringstream &dump, std::ostringstream &prepender) {
20 
21  prepender << dump.str();
22  dump.str("");
23  dump.clear();
24  dump << prepender.str();
25  }
26 
27  void prepend(std::ostringstream &dump, std::string prepender) {
28 
29  std::ostringstream tmp;
30  tmp << prepender << dump.str();
31  dump.str("");
32  dump.clear();
33  dump << tmp.str();
34  }
35 
36 private:
37 
38  std::string name_;
39 
40 };
41 
42 #endif
virtual void execute(std::ostringstream &dump)=0
std::string name_
void prepend(std::ostringstream &dump, std::ostringstream &prepender)
TraceComponent(std::string name)
const std::string name
void prepend(std::ostringstream &dump, std::string prepender)