KaliVeda
Toolkit for HIC analysis
KVCsI.h
1 #ifndef KVCSI_H
2 #define KVCSI_H
3 
4 #include "KVINDRADetector.h"
5 #include "KVINDRACsITotLightReconstructor.h"
6 
16 class KVCsI: public KVINDRADetector {
17 
19 
20 protected:
21  void init();
22 
23 public:
24  KVCsI();
25  KVCsI(Float_t thick, Float_t thickAl = 0 /* um */);
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
bool Bool_t
char Char_t
float Float_t
double Double_t
#define ClassDef(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
CsI(Tl) scintillation detectors of the INDRA multidetector array.
Definition: KVCsI.h:16
void DeduceACQParameters(KVEvent *, KVNumberList &)
Definition: KVCsI.cpp:121
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:87
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:18
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:261
virtual KVDetectorSignal * GetDetectorSignal(const KVString &type) const
Definition: KVDetector.h:533
virtual void RemoveCalibrators()
Definition: KVDetector.cpp:700
const KVSeqCollection & GetListOfDetectorSignals() const
Definition: KVDetector.h:786
Abstract base class container for multi-particle events.
Definition: KVEvent.h:67
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:126
Strings used to represent a set of ranges of values.
Definition: KVNumberList.h:85
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:73
const Int_t n