KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVINDRADetector.cpp
Go to the documentation of this file.
1 //Created by KVClassFactory on Sat Oct 3 14:18:09 2009
2 //Author: John Frankland,,,
3 
4 #include "KVINDRADetector.h"
5 #include "KVGroup.h"
6 #include "KVDataSet.h"
7 
9 
10 
11 
18 const Char_t* KVINDRADetector::GetArrayName()
19 {
20  // Name of detector given in the form
21  // CI_0213, SI_0911, CSI_1705
22  // to be compatible with GANIL acquisition parameters
23  //
24  // The root of the name is the detector type
25 
26  fFName =
27  Form("%s_%02d%02d", GetType(), GetRingNumber(),
28  GetModuleNumber());
29  return fFName.Data();
30 }
31 
32 
33 
34 
39 
41 {
42  //PRIVATE METHOD
43  //Used when GetChIo is called the first time to retrieve the
44  //pointer to the ChIo of the group associated to this detector
45  if (GetTelescope()) {
46  KVGroup* kvgr = GetTelescope()->GetGroup();
47  if (kvgr) {
48  const KVSeqCollection* dets = kvgr->GetDetectors();
49  TIter next_det(dets);
50  KVINDRADetector* dd;
51  while ((dd = (KVINDRADetector*) next_det())) {
52  if (dd->InheritsFrom("KVChIo"))
53  fChIo = dd;
54  }
55  }
56  }
57  else
58  fChIo = 0;
59  return fChIo;
60 }
61 
62 
63 
69 
71 {
72  // Overrides KVDetector::SetThickness
73  // If using ROOT geometry, print warning that any change in detector thickness will not
74  // be taken into account in the geometry.
75  // All thicknesses have to be set before the ROOT geometry is generated.
76 
77  if (ROOTGeo()) {
78  Warning("SetThickness", "Using ROOT geometry. Changes to detector thickness will not be taken into account in geometry.");
79  }
81 }
82 
83 
ClassImp(KVPartitionList) void KVPartitionList
Initialisation.
char Char_t
double Double_t
char * Form(const char *fmt,...)
const KVSeqCollection * GetDetectors() const
Group of detectors which can be treated independently of all others in array.
Definition: KVGroup.h:19
Base class for detectors of INDRA array.
void SetThickness(Double_t thick)
KVINDRATelescope * GetTelescope() const
KVINDRADetector * FindChIo()
KVINDRADetector * fChIo
pointer to ionisation chamber in group associated to this detector
KVGroup * GetGroup() const
virtual void SetThickness(Double_t thick)
Definition: KVMaterial.cpp:454
Bool_t ROOTGeo() const
Returns kTRUE if ROOT geometry is used, kFALSE if not.
Definition: KVPosition.cpp:598
KaliVeda extensions to ROOT collection classes.
virtual void Warning(const char *method, const char *msgfmt,...) const
virtual Bool_t InheritsFrom(const char *classname) const
Type GetType(const std::string &Name)