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:
25  {
27  set_type("CSI");
28  SetLabel("CSI");//for use with KVReconNucTrajectory
29  }
30 
31  Double_t GetCorrectedEnergy(KVNucleus*, Double_t lum = -1., Bool_t transmission = kTRUE) override;
32 
34  {
35  if (n > 0 && n < 255) fPinLaser = (Char_t)n;
36  }
38  {
40  return (Int_t)fPinLaser;
41  }
42  KVDetectorSignal* GetDetectorSignal(const KVString& type) const override
43  {
49 
50  if (type == "TotLight" && !KVDetector::GetDetectorSignal(type)) {
51  if (KVDetector::GetDetectorSignal("L_PedCor") && KVDetector::GetDetectorSignal("R_PedCor")) {
52  const_cast<KVCsI*>(this)->AddDetectorSignal(new KVINDRACsITotLightReconstructor(this));
53  }
54  }
55  return KVDetector::GetDetectorSignal(type);
56  }
57  void RemoveCalibrators() override
58  {
63 
64  KVDetectorSignal* totlight = GetListOfDetectorSignals().get_object<KVDetectorSignal>("TotLight");
65  if (totlight && !totlight->IsRaw() && GetDetectorSignal("L_PedCor") && GetDetectorSignal("R_PedCor")) {
66  const_cast<KVSeqCollection&>(GetListOfDetectorSignals()).Remove(totlight);
67  delete totlight;
68  }
69  KVDetector::RemoveCalibrators();
70  }
71 
72  ClassDefOverride(KVCsI, 5) // The CsI(Tl) detectors of the INDRA array
73 };
74 
75 #endif
int Int_t
bool Bool_t
char Char_t
double Double_t
#define ClassDefOverride(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 SetPinLaser(Int_t n)
Definition: KVCsI.h:33
Int_t GetPinLaser()
Definition: KVCsI.h:37
KVCsI()
Definition: KVCsI.h:24
KVDetectorSignal * GetDetectorSignal(const KVString &type) const override
Definition: KVCsI.h:42
void init()
Double_t GetCorrectedEnergy(KVNucleus *, Double_t lum=-1., Bool_t transmission=kTRUE) override
Definition: KVCsI.cpp:16
Char_t fPinLaser
number of pin laser used to control stability of crystal
Definition: KVCsI.h:18
void RemoveCalibrators() override
Definition: KVCsI.h:57
Base class for output signal data produced by a detector.
virtual Bool_t IsRaw() const
Calculation of light output from fast and slow components for INDRA CsI detectors.
Base class for detectors of INDRA array.
void set_type(TString type)
Description of properties and kinematics of atomic nuclei.
Definition: KVNucleus.h:123
KaliVeda extensions to ROOT collection classes.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:73
const Int_t n