Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
Parameter.h
1/*
2 * HalParameter.h
3 *
4 * Created on: 30-04-2022
5 * Author: Daniel Wielanek
6 */
7
8#ifndef HALNAMEDVALUE_H_
9#define HALNAMEDVALUE_H_
10
11#include "Object.h"
12
13#include <TString.h>
14
19class TBrowser;
20namespace Hal {
21 class Parameter : public Object {
22 protected:
26 enum class EParameterMerge {
27 kPlus,
28 kMultiply,
29 kEqual,
30 kMaximum,
31 kMinimum,
32 kFirst,
33 kLast,
35 };
40
41 public:
45 Parameter();
51 Parameter(TString name, Char_t merge_mode = '=');
60 void SetMergeMode(Char_t mergemode);
66 Bool_t CheckName(const TObject* object);
71 Long64_t Merge(TCollection* collection);
76 void Browse(TBrowser* b);
83 virtual TString HTMLExtract(Int_t /*counter*/ = 0, TString /*dir*/ = " ") const { return "NULL"; };
84 virtual ~Parameter();
85 ClassDef(Parameter, 1)
86 };
90 class ParameterInt : public Parameter {
91 Int_t fValue;
92
93 public:
101 ParameterInt(TString name, Int_t value, Char_t merge_mode = '=');
102 void Add(const Object* val);
107 inline void SetValue(Int_t value) { fValue = value; };
112 inline Int_t GetValue() const { return fValue; };
113 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
114 virtual ~ParameterInt();
115 ClassDef(ParameterInt, 1)
116 };
120 class ParameterDouble : public Parameter {
121 Double_t fValue;
122
123 public:
131 ParameterDouble(TString name, Double_t value, Char_t merge_mode = '=');
132 void Add(const Object* val);
137 inline void SetValue(Double_t value) { fValue = value; };
142 inline Double_t GetValue() const { return fValue; };
143 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
144 virtual ~ParameterDouble();
145 ClassDef(ParameterDouble, 1)
146 };
150 class ParameterFloat : public Parameter {
151 Float_t fValue;
152
153 public:
161 ParameterFloat(TString name, Float_t value, Char_t merge_mode = '=');
162 void Add(const Object* val);
167 inline void SetValue(Float_t value) { fValue = value; };
172 inline Float_t GetValue() const { return fValue; };
173 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
174 virtual ~ParameterFloat();
175 ClassDef(ParameterFloat, 1)
176 };
180 class ParameterString : public Parameter {
181 TString fValue;
182
183 public:
191 ParameterString(TString name, TString value, Char_t merge_mode = '=');
192 void Add(const Object* val);
197 inline void SetValue(TString value) { fValue = value; };
202 inline TString GetValue() const { return fValue; };
203 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
204 virtual ~ParameterString();
205 ClassDef(ParameterString, 1)
206 };
210 class ParameterUInt : public Parameter {
211 UInt_t fValue;
212
213 public:
221 ParameterUInt(TString name, UInt_t value, Char_t merge_mode = '=');
222 void Add(const Object* val);
227 inline void SetValue(UInt_t value) { fValue = value; };
232 inline UInt_t GetValue() const { return fValue; };
233 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
234 virtual ~ParameterUInt();
235 ClassDef(ParameterUInt, 1)
236 };
240 class ParameterULong : public Parameter {
241 ULong_t fValue;
242
243 public:
251 ParameterULong(TString name, ULong_t value, Char_t merge_mode = '=');
252 void Add(const Object* val);
257 inline void SetValue(ULong_t value) { fValue = value; };
262 inline ULong_t GetValue() const { return fValue; };
263 TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
264 virtual ~ParameterULong();
265 ClassDef(ParameterULong, 1)
266 };
271 ULong64_t fValue;
272
273 public:
281 ParameterULong64(TString name, ULong64_t value, Char_t merge_mode = '=');
282 void Add(const Object* val);
287 inline void SetValue(ULong64_t value) { fValue = value; };
292 inline ULong64_t GetValue() const { return fValue; };
293 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
294 virtual ~ParameterULong64();
295 ClassDef(ParameterULong64, 1)
296 };
300 class ParameterBool : public Parameter {
301 Bool_t fValue;
302
303 public:
311 ParameterBool(TString name, Bool_t value, Char_t merge_mode = '=');
312 void Add(const Object* val);
317 inline void SetValue(Bool_t value) { fValue = value; };
322 inline Bool_t GetValue() const { return fValue; };
323 virtual TString HTMLExtract(Int_t counter = 0, TString dir = " ") const;
324 virtual ~ParameterBool();
325 ClassDef(ParameterBool, 1)
326 };
327} // namespace Hal
328#endif /* HALNAMEDVALUE_H_ */
void SetValue(Bool_t value)
Definition Parameter.h:317
void Add(const Object *val)
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
Bool_t GetValue() const
Definition Parameter.h:322
void SetValue(Double_t value)
Definition Parameter.h:137
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
Double_t GetValue() const
Definition Parameter.h:142
void Add(const Object *val)
Definition Parameter.cxx:86
Float_t GetValue() const
Definition Parameter.h:172
void SetValue(Float_t value)
Definition Parameter.h:167
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
void Add(const Object *val)
void Add(const Object *val)
Int_t GetValue() const
Definition Parameter.h:112
void SetValue(Int_t value)
Definition Parameter.h:107
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
TString GetValue() const
Definition Parameter.h:202
void Add(const Object *val)
void SetValue(TString value)
Definition Parameter.h:197
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
void Add(const Object *val)
void SetValue(UInt_t value)
Definition Parameter.h:227
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
UInt_t GetValue() const
Definition Parameter.h:232
ULong64_t GetValue() const
Definition Parameter.h:292
void Add(const Object *val)
virtual TString HTMLExtract(Int_t counter=0, TString dir=" ") const
void SetValue(ULong64_t value)
Definition Parameter.h:287
ULong_t GetValue() const
Definition Parameter.h:262
TString HTMLExtract(Int_t counter=0, TString dir=" ") const
void Add(const Object *val)
void SetValue(ULong_t value)
Definition Parameter.h:257
Long64_t Merge(TCollection *collection)
EParameterMerge fMergeMode
Definition Parameter.h:39
void Browse(TBrowser *b)
Definition Parameter.cxx:66
virtual TString HTMLExtract(Int_t=0, TString=" ") const
Definition Parameter.h:83
void SetMergeMode(Char_t mergemode)
Definition Parameter.cxx:31
Bool_t CheckName(const TObject *object)
Definition Parameter.cxx:53