/home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/core/include/RAT/Processor.hh Source File

Ratpac-two: /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/core/include/RAT/Processor.hh Source File
Ratpac-two
Processor.hh
1 
27 #ifndef __RAT_Processor__
28 #define __RAT_Processor__
29 
30 #include <RAT/DS/Root.hh>
31 #include <RAT/DS/Run.hh>
32 #include <string>
33 
34 namespace RAT {
35 
36 class Processor {
37  protected:
38  std::string name;
39 
40  public:
51  Processor(std::string _name) : name(_name){/* Do nothing */};
52 
54  virtual ~Processor(){/* Do nothing */};
55 
56  std::string GetName() const { return name; }
57 
59  enum Result {
60  OK = 0,
61  FAIL = 1,
63  ABORT = 2
66  };
67 
72  class ParamError {
73  public:
79  ParamError(std::string _param) : param(_param){};
80 
81  std::string param;
83  };
84 
88  class ParamUnknown : public ParamError {
89  public:
94  ParamUnknown(std::string _param) : ParamError(_param){};
95  };
96 
106  class ParamInvalid : public ParamError {
107  public:
113  ParamInvalid(std::string _param, std::string _msg) : ParamError(_param), msg(_msg){};
114 
115  std::string msg;
116  };
117 
125  virtual void SetI(std::string param, int value);
126 
134  virtual void SetF(std::string param, float value);
135 
143  virtual void SetD(std::string param, double value);
144 
152  virtual void SetS(std::string param, std::string value);
153 
165  virtual Processor::Result DSEvent(DS::Root *ds);
166 
167  virtual void BeginOfRun(DS::Run *run) {}
168  virtual void EndOfRun(DS::Run *run) {}
169 
185  virtual Processor::Result Event(DS::Root *ds, DS::EV *ev);
186 };
187 
188 } // namespace RAT
189 
190 #endif
Definition: Root.hh:39
Definition: Run.hh:22
Definition: Processor.hh:72
std::string param
Definition: Processor.hh:79
ParamError(std::string _param)
Definition: Processor.hh:79
Definition: Processor.hh:106
std::string msg
Definition: Processor.hh:113
ParamInvalid(std::string _param, std::string _msg)
Definition: Processor.hh:113
Definition: Processor.hh:88
ParamUnknown(std::string _param)
Definition: Processor.hh:94
Definition: Processor.hh:36
virtual ~Processor()
Definition: Processor.hh:54
virtual void SetI(std::string param, int value)
Definition: Processor.cc:7
virtual Processor::Result DSEvent(DS::Root *ds)
Definition: Processor.cc:15
virtual void SetS(std::string param, std::string value)
Definition: Processor.cc:13
Processor(std::string _name)
Definition: Processor.hh:51
virtual Processor::Result Event(DS::Root *ds, DS::EV *ev)
Definition: Processor.cc:32
virtual void SetD(std::string param, double value)
Definition: Processor.cc:11
virtual void SetF(std::string param, float value)
Definition: Processor.cc:9
Result
Definition: Processor.hh:59
@ ABORT
Definition: Processor.hh:63
@ OK
Definition: Processor.hh:60
@ FAIL
Definition: Processor.hh:61
Definition: CCCrossSecMessenger.hh:29