FRIBParallelanalysis  1.0
FrameworkforMPIParalleldataanalysisatFRIB
TCLTracedVariable.h
1 /*
2  This software is Copyright by the Board of Trustees of Michigan
3  State University (c) Copyright 2005.
4 
5  You may use this software under the terms of the GNU public license
6  (GPL). The terms of this license are described at:
7 
8  http://www.gnu.org/licenses/gpl.txt
9 
10 */
11 
12 #ifndef CTCLTRACEDVARIABLE_H
13 #define CTCLTRACEDVARIABLE_H
14 
15 #ifndef CTCLVARIABLE_H
16 #include <TCLVariable.h>
17 #endif
18 
19 #include <string>
20 
21 // Forward definitions:
22 
23 class CTCLInterpreter;
25 
35 {
36 private:
37  CVariableTraceCallback* m_pCallback;
38 public:
40  std::string Name,
42  int flags = (TCL_TRACE_READS |
43  TCL_TRACE_WRITES |
44  TCL_TRACE_UNSETS));
45  virtual ~CTCLTracedVariable();
46 
47  // Supporting copy like stuff would require that I assume the callback objects
48  // support copy construction, and they are beyond my control, so play it safe:
49 private:
51  CTCLTracedVariable& operator=(const CTCLTracedVariable& rhs);
52  int operator==(const CTCLTracedVariable& rhs) const;
53  int operator!=(const CTCLTracedVariable& rhs) const;
54 public:
55 
56  // Selector(s):
57 
58  CVariableTraceCallback& getCallback()
59  {
60  return *m_pCallback;
61  }
62  // class functions:
63 
64 public:
65  virtual char* operator()(char* pName, char* pElement, int flags);
66 
67 };
68 
69 #endif
Definition: TCLInterpreter.h:59
Definition: VariableTraceCallback.h:23
virtual char * operator()(char *pName, char *pElement, int flags)
Definition: TCLTracedVariable.cpp:73
virtual ~CTCLTracedVariable()
Definition: TCLTracedVariable.cpp:51
Definition: TCLVariable.h:50
Definition: TCLTracedVariable.h:34