KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVDetectorSignalExpression.h
Go to the documentation of this file.
1 
4 #ifndef __KVDETECTORSIGNALEXPRESSION_H
5 #define __KVDETECTORSIGNALEXPRESSION_H
6 
7 #include "KVDetectorSignal.h"
8 #include "TFormula.h"
9 
42 
43  friend class KVDetector;
44 
45  std::unique_ptr<TFormula> fFormula;
46  std::vector<KVDetectorSignal*> fSignals;
49  KVDetectorSignalExpression(const Char_t* type, const KVString& _expr, KVDetector* det);
50 public:
51  KVDetectorSignalExpression(const Char_t* type, const KVString& _expr, const KVSeqCollection* dets);
52  Double_t GetValue(const KVNameValueList& params = "") const;
53  Bool_t IsValid() const
54  {
56  return fValid;
57  }
58  Bool_t IsRaw() const
59  {
62  return kFALSE;
63  }
65  {
67  return kTRUE;
68  }
70  {
72  Warning("SetValue", "[%s] : Calling SetValue for a signal expression has no effect", GetName());
73  }
75  {
77  return GetLabel();
78  }
79 
80  ClassDef(KVDetectorSignalExpression, 1) //Mathematical expression involving one or more detector signals
81 };
82 
83 #endif
char Char_t
const Bool_t kFALSE
bool Bool_t
double Double_t
const Bool_t kTRUE
#define ClassDef(name, id)
const Char_t * GetLabel() const
Definition: KVBase.h:198
Signal output from a mathematical combination of other signals.
Double_t GetValue(const KVNameValueList &params="") const
std::unique_ptr< TFormula > fFormula
std::vector< KVDetectorSignal * > fSignals
KVDetectorSignalExpression(const Char_t *type, const KVString &_expr, KVDetector *det)
Base class for output signal data produced by a detector.
Base class for detector geometry description.
Definition: KVDetector.h:159
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
KaliVeda extensions to ROOT collection classes.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:72
virtual const char * GetName() const
virtual void Warning(const char *method, const char *msgfmt,...) const