FairRoot/PandaRoot
PndEmcErrorMatrixPar.h
Go to the documentation of this file.
1 // PndEmcErrorMatrixPar
3 //
4 // Container class for EMC error matrix parameter
5 // class is inherited from FairParGenericSet
6 //
7 // Parametrization of EMC error matrix
8 // functions used for parameterization
9 // Energy: Delta(E)/E = (a^2/E^power) + const^2 + (quadr/E)^2
10 // position: Delta(x)=(a*a/E^power) + const^2
11 // There are 10 parameters (engParA, engPower, engConst, engQuadr, pos1ParA, pos1Power,
12 // pos1Const, pos2ParA, pos2Power, pos2Const) for each component of EMC (barrel,
13 // fwd endcap, bwd endcap, shashlyk)
15 
16 //#pragma once
17 #ifndef PNDEMCERRORMATRIXPAR_H
18 #define PNDEMCERRORMATRIXPAR_H
19 
20 #include "FairParGenericSet.h"
21 #include "FairParamList.h"
22 #include <cstdlib>
23 #include <map>
24 #include <vector>
25 
38 class PndEmcErrorMatrixParObject: public TObject
39 {
40  public:
41  void SetErrorMatrix(Int_t detectorComponent, Double_t *pars);
42  void GetErrorMatrix(Int_t detectorComponent, Double_t *pars);
43 
46  private:
47  std::map<Int_t,std::vector<Double_t> > fErrorMatrixPars;
49 };
50 
51 
52 class PndEmcErrorMatrixPar : public FairParGenericSet
53 {
54  public:
55  void GetErrorMatrixParameters(Int_t detectorComponent, Double_t *pars);
58  PndEmcErrorMatrixPar (const char* name="PndEmcErrorMatrixPar",
59  const char* title="Emc error matrix parameter",
60  const char* context="TestDefaultContext");
62 
63  Bool_t IsValid();
64 
65  void clear(void){};
66 
67  void putParams(FairParamList* list);
68  Bool_t getParams(FairParamList* list);
69 
70  private :
73 
74  PndEmcErrorMatrixPar(const PndEmcErrorMatrixPar& L) : FairParGenericSet(L) {};
76 
77 };
78 
79 #endif
PndEmcErrorMatrixPar(const char *name="PndEmcErrorMatrixPar", const char *title="Emc error matrix parameter", const char *context="TestDefaultContext")
void GetErrorMatrix(Int_t detectorComponent, Double_t *pars)
Container class for EMC error matrix parameter class is inherited from FairParGenericSet.
void SetErrorMatrixObject(PndEmcErrorMatrixParObject *ParObject)
std::map< Int_t, std::vector< Double_t > > fErrorMatrixPars
ClassDef(PndEmcErrorMatrixPar, 1)
Double_t
PndEmcErrorMatrixParObject * GetParObject()
Bool_t getParams(FairParamList *list)
TString name
void putParams(FairParamList *list)
PndEmcErrorMatrixPar & operator=(const PndEmcErrorMatrixPar &)
PndEmcErrorMatrixPar(const PndEmcErrorMatrixPar &L)
ClassDef(PndEmcErrorMatrixParObject, 1)
void GetErrorMatrixParameters(Int_t detectorComponent, Double_t *pars)
PndEmcErrorMatrixParObject * fParObject
void SetErrorMatrix(Int_t detectorComponent, Double_t *pars)