r184: *** empty log message ***
[ctsim.git] / include / trace.h
1 #ifndef TRACE_H
2 #define TRACE_H
3
4 static const int TRACE_INVALID = 0xFFFF;
5 static const int TRACE_NONE = 0x0000;
6 static const int TRACE_TEXT = 0x0001;
7 static const int TRACE_PHM = 0x0002;
8 static const int TRACE_RAYS = 0x0004;
9 static const int TRACE_PLOT = 0x0008;
10 static const int TRACE_CLIPPING = 0x0010;
11
12 class TraceLevel
13 {
14  public:
15   static const char TRACE_NONE_STR[];
16   static const char TRACE_TEXT_STR[];
17   static const char TRACE_PHM_STR[];
18   static const char TRACE_RAYS_STR[];
19   static const char TRACE_PLOT_STR[];
20   static const char TRACE_CLIPPING_STR[];
21   
22   TraceLevel (const char* const traceString);
23   
24   void addTrace (const char* const traceString);
25   
26   bool isTrace (const char* const traceQuery) const;
27   
28   int getTraceLevel(void) const { return m_traceLevel; }
29   
30   static int convertTraceNameToID (const char* traceName);
31
32  private:
33   
34   int m_traceLevel;
35   
36   bool addTraceElements (const char* const traceString);
37 };
38
39
40 #endif
41