er  dev
ERTelescopeGeoComponentDoubleSi.h
1 
2 /********************************************************************************
3  * Copyright (C) Joint Institute for Nuclear Research *
4  * *
5  * This software is distributed under the terms of the *
6  * GNU Lesser General Public Licence version 3 (LGPL) version 3, *
7  * copied verbatim in the file "LICENSE" *
8  ********************************************************************************/
9 
10 #ifndef ERTelescopeGeoComponentDoubleSi_H
11 #define ERTelescopeGeoComponentDoubleSi_H
12 
13 #include "ERTelescopeGeoComponentSensetive.h"
14 
15 #include "TString.h"
16 #include "TVector3.h"
17 
19 public:
21  ERTelescopeGeoComponentDoubleSi(const TString& typeFromXML, const TString& id,
22  const TString& orientAroundZ);
23  ERTelescopeGeoComponentDoubleSi(const TString& typeFromXML, const TString& id,
24  const TVector3& position, const TVector3& rotation,
25  const TString& orientAroundZ);
26  virtual ~ERTelescopeGeoComponentDoubleSi() = default;
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 protected:
35  TString fOrientAroundZ = "X";
36  Double_t fDeadLayerThicknessFrontSide = 0.;
37  Double_t fDeadLayerThicknessBackSide = 0.;
38  Int_t fStripCountX = 0;
39  Int_t fStripCountY = 0;
41 };
42 #endif