KaliVeda
Toolkit for HIC analysis
Loading...
Searching...
No Matches
KVINDRADetector.h
1
3
4#ifndef __KVINDRADETECTOR_H
5#define __KVINDRADETECTOR_H
6
7#include "KVDetector.h"
8#include "KVINDRATelescope.h"
9
18protected:
19
22
23public:
25 : fChIo(nullptr)
26 {
27 }
28 virtual ~KVINDRADetector() {}
29 KVINDRADetector(const Char_t* type, const Float_t thick = 0.0)
30 : KVDetector(type, thick), fChIo(nullptr)
31 {
32 }
33
35 {
37 return (KVINDRATelescope*)GetParentStructure("TELESCOPE");
38 }
39
40 virtual void SetSegment(UShort_t)
41 {
45 }
46
47 void SetType(const Char_t* t)
48 {
50 TString T(t);
51 T.ToUpper();
53 }
54
55 const Char_t* GetArrayName();
57 {
58 if (GetTelescope()) return GetTelescope()->GetRingNumber();
61 name.Begin("_");
62 KVString type = name.Next(kTRUE);
63 KVString index = name.Next(kTRUE);
64 if (type == "SILI" || type == "SI75") return index.Atoi();
65 return index.Atoi() / 100;
66 }
68 {
69 if (GetTelescope()) return GetTelescope()->GetNumber();
72 name.Begin("_");
73 KVString type = name.Next(kTRUE);
74 KVString index = name.Next(kTRUE);
75 if (type == "SILI" || type == "SI75") return 0; //no idea
76 return index.Atoi() % 100;
77 }
79 {
81 return 100 * GetRingNumber() + GetModuleNumber();
82 }
83
85 {
86 return (fChIo ? fChIo : const_cast<KVINDRADetector*>(this)->FindChIo());
87 }
88
89 void SetThickness(Double_t thick);
90
91 ClassDef(KVINDRADetector, 2) //Detectors of INDRA array
92};
93
94#endif
int Int_t
unsigned int UInt_t
unsigned short UShort_t
char Char_t
float Float_t
double Double_t
constexpr Bool_t kTRUE
#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 index
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
char name[80]
virtual void SetType(const Char_t *str)
Definition KVBase.h:173
UInt_t GetNumber() const
Definition KVBase.h:220
Base class for detector geometry description.
Definition KVDetector.h:160
KVGeoStrucElement * GetParentStructure(const Char_t *type, const Char_t *name="") const
Base class for detectors of INDRA array.
void SetType(const Char_t *t)
UInt_t GetRingNumber() const
void SetThickness(Double_t thick)
KVINDRADetector(const Char_t *type, const Float_t thick=0.0)
UInt_t GetModuleNumber() const
KVINDRATelescope * GetTelescope() const
virtual ~KVINDRADetector()
virtual void SetSegment(UShort_t)
const Char_t * GetArrayName()
KVINDRADetector * GetChIo() const
KVINDRADetector * FindChIo()
KVINDRADetector * fChIo
pointer to ionisation chamber in group associated to this detector
Int_t GetIndex() const
Base class for telescopes in INDRA array.
Int_t GetRingNumber() const
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition KVString.h:73
const char * GetName() const override
double T(double x)