er  dev
ERRTelescopeGeoComponentCsI.h
1 /********************************************************************************
2  * Copyright (C) Joint Institute for Nuclear Research *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence version 3 (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 
9 #ifndef ERRTelescopeGeoComponentCsI_H
10 #define ERRTelescopeGeoComponentCsI_H
11 
12 #include "ERTelescopeGeoComponentSensetive.h"
13 
14 #include "TString.h"
15 #include "TVector3.h"
16 
18 public:
19  ERRTelescopeGeoComponentCsI() = default;
20  ERRTelescopeGeoComponentCsI(const TString& typeFromXML, const TString& id)
21  : ERTelescopeGeoComponentSensetive(typeFromXML, id) {}
22  ERRTelescopeGeoComponentCsI(const TString& typeFromXML, const TString& id,
23  const TVector3& position, const TVector3& rotation)
24  : ERTelescopeGeoComponentSensetive(typeFromXML, id, position, rotation) {}
25  virtual ~ERRTelescopeGeoComponentCsI() = default;
26  virtual void ConstructGeometryVolume(void);
27  virtual TString GetBranchName(ERDataObjectType object,
28  OrientationAroundZ orientationAroundZ = OrientationAroundZ::Default,
29  ChannelSide side = ChannelSide::None) const;
30  virtual std::list<OrientationAroundZ> GetOrientationsAroundZ() const;
31  virtual std::list<ChannelSide> GetChannelSides() const;
32  virtual Int_t GetChannelFromSensetiveNodePath(
33  const TString& path, OrientationAroundZ orientation = OrientationAroundZ::Default) const;
34 private:
35  virtual void ParseXmlParameters();
36  Int_t fCrystalCount = 0;
37  Double_t fY1 = 0.;
38  Double_t fY2 = 0.;
39  Double_t fX1 = 0.;
40  Double_t fZ1 = 0.;
41  Double_t fZ2 = 0.;
42  Double_t fX3 = 0.;
43  Double_t fZ3 = 0.;
44  Double_t fSplitSize = 0.;
45  Double_t fDeadLayer = 0.;
46  TString fDeadLayerMedia;
47  Double_t fDeadLayerPeriphery = 0.;
48  TString fDeadLayerPeripheryMedia;
49  ClassDef(ERRTelescopeGeoComponentCsI,1)
50 };
51 #endif