KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVCsI.h
Go to the documentation of this file.
1 #ifndef KVCSI_H
2 #define KVCSI_H
3 
4 #include "KVINDRADetector.h"
6 
15 class KVCsI: public KVINDRADetector {
16 
18 
19 protected:
20  void init();
21 
22 public:
23  KVCsI();
24  KVCsI(Float_t thick, Float_t thickAl = 0 /* um */);
25  virtual ~ KVCsI();
26 
27  void SetAlThickness(Float_t thickAl /* um */);
28 
30 
31  Double_t GetCorrectedEnergy(KVNucleus*, Double_t lum = -1., Bool_t transmission = kTRUE);
32 
34  {
35  if (n > 0 && n < 255) fPinLaser = (Char_t)n;
36  }
38  {
40  return (Int_t)fPinLaser;
41  }
42 
44 
45  virtual KVDetectorSignal* GetDetectorSignal(const KVString& type) const
46  {
52 
53  if (type == "TotLight" && !KVDetector::GetDetectorSignal(type)) {
54  if (KVDetector::GetDetectorSignal("L_PedCor") && KVDetector::GetDetectorSignal("R_PedCor")) {
55  const_cast<KVCsI*>(this)->AddDetectorSignal(new KVINDRACsITotLightReconstructor(this));
56  }
57  }
59  }
61  {
66 
68  if (totlight && !totlight->IsRaw() && GetDetectorSignal("L_PedCor") && GetDetectorSignal("R_PedCor")) {
69  const_cast<KVSeqCollection&>(GetListOfDetectorSignals()).Remove(totlight);
70  delete totlight;
71  }
73  }
74 
75  ClassDef(KVCsI, 5) // The CsI(Tl) detectors of the INDRA array
76 };
77 
78 #endif
int Int_t
char Char_t
bool Bool_t
double Double_t
float Float_t
#define ClassDef(name, id)
int type
CsI(Tl) scintillation detectors of the INDRA multidetector array.
Definition: KVCsI.h:15
virtual ~ KVCsI()
void DeduceACQParameters(KVEvent *, KVNumberList &)
Definition: KVCsI.cpp:132
void SetPinLaser(Int_t n)
Definition: KVCsI.h:33
Double_t GetCorrectedEnergy(KVNucleus *, Double_t lum=-1., Bool_t transmission=kTRUE)
void SetACQParams();
Definition: KVCsI.cpp:97
Int_t GetPinLaser()
Definition: KVCsI.h:37
KVCsI()
Definition: KVCsI.cpp:31
void init()
initialise non-persistent pointers
Definition: KVCsI.cpp:14
Char_t fPinLaser
number of pin laser used to control stability of crystal
Definition: KVCsI.h:17
virtual KVDetectorSignal * GetDetectorSignal(const KVString &type) const
Definition: KVCsI.h:45
void RemoveCalibrators()
Definition: KVCsI.h:60
void SetAlThickness(Float_t thickAl)
Definition: KVCsI.cpp:70
Base class for output signal data produced by a detector.
virtual Bool_t IsRaw() const
void AddDetectorSignal(KVDetectorSignal *ds)
Definition: KVDetector.h:260
virtual KVDetectorSignal * GetDetectorSignal(const KVString &type) const
Definition: KVDetector.h:532
virtual void RemoveCalibrators()
Definition: KVDetector.cpp:699
const KVSeqCollection & GetListOfDetectorSignals() const
Definition: KVDetector.h:785
Abstract base class container for multi-particle events.
Definition: KVEvent.h:66
Calculation of light output from fast and slow components for INDRA CsI detectors.
Base class for detectors of INDRA array.
Description of properties and kinematics of atomic nuclei.
Definition: KVNucleus.h:125
Strings used to represent a set of ranges of values.
Definition: KVNumberList.h:83
KaliVeda extensions to ROOT collection classes.
T * get_object(const TString &name) const
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:72
const Int_t n