ATLAS Offline Software
LArStraightElectrodes.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LARG4BARREL_LArStraightElectrodes_H
6 #define LARG4BARREL_LArStraightElectrodes_H
7 
9 #include <string>
10 
12 private:
13  LArStraightElectrodes(const std::string& strDetector="");
14  void initXYCentEle(const PhysicalVolumeAccessor& theElectrodes, int stackid, int cellid);
15  void initHalfLength(const PhysicalVolumeAccessor& theElectrodes, int stackid, int cellid);
16  double SlantEle(const PhysicalVolumeAccessor& theElectrodes, int stackid, int cellid) const;
17  double m_xcent[1024][14]{};
18  double m_ycent[1024][14]{};
19  double m_cosu[1024][14]{};
20  double m_sinu[1024][14]{};
21  double m_halflength[1024][14]{};
22  int m_parity;
23 
24 public:
25  static const LArStraightElectrodes* GetInstance(const std::string& strDetector="");
26  double XCentEle(int stackid, int cellid) const { return m_xcent[cellid][stackid]; }
27  double YCentEle(int stackid, int cellid) const { return m_ycent[cellid][stackid]; }
28  double HalfLength(int stackid, int cellid) const { return m_halflength[cellid][stackid]; }
29  double Cosu(int stackid, int cellid) const { return m_cosu[cellid][stackid]; }
30  double Sinu(int stackid, int cellid) const { return m_sinu[cellid][stackid]; }
31 };
32 
33 #endif // LARG4BARREL_LArStraightElectrodes_H
PhysicalVolumeAccessor.h
LArStraightElectrodes::m_halflength
double m_halflength[1024][14]
Definition: LArStraightElectrodes.h:21
LArStraightElectrodes::m_cosu
double m_cosu[1024][14]
Definition: LArStraightElectrodes.h:19
LArStraightElectrodes::Sinu
double Sinu(int stackid, int cellid) const
Definition: LArStraightElectrodes.h:30
LArStraightElectrodes::m_xcent
double m_xcent[1024][14]
Definition: LArStraightElectrodes.h:17
LArStraightElectrodes::Cosu
double Cosu(int stackid, int cellid) const
Definition: LArStraightElectrodes.h:29
LArStraightElectrodes::m_parity
int m_parity
Definition: LArStraightElectrodes.h:22
LArStraightElectrodes::initXYCentEle
void initXYCentEle(const PhysicalVolumeAccessor &theElectrodes, int stackid, int cellid)
Definition: LArStraightElectrodes.cxx:40
PhysicalVolumeAccessor
Definition: PhysicalVolumeAccessor.h:18
LArStraightElectrodes
Definition: LArStraightElectrodes.h:11
LArStraightElectrodes::XCentEle
double XCentEle(int stackid, int cellid) const
Definition: LArStraightElectrodes.h:26
LArStraightElectrodes::SlantEle
double SlantEle(const PhysicalVolumeAccessor &theElectrodes, int stackid, int cellid) const
Definition: LArStraightElectrodes.cxx:70
LArStraightElectrodes::initHalfLength
void initHalfLength(const PhysicalVolumeAccessor &theElectrodes, int stackid, int cellid)
Definition: LArStraightElectrodes.cxx:83
LArStraightElectrodes::YCentEle
double YCentEle(int stackid, int cellid) const
Definition: LArStraightElectrodes.h:27
LArStraightElectrodes::GetInstance
static const LArStraightElectrodes * GetInstance(const std::string &strDetector="")
Definition: LArStraightElectrodes.cxx:12
LArStraightElectrodes::m_ycent
double m_ycent[1024][14]
Definition: LArStraightElectrodes.h:18
LArStraightElectrodes::LArStraightElectrodes
LArStraightElectrodes(const std::string &strDetector="")
Definition: LArStraightElectrodes.cxx:19
LArStraightElectrodes::m_sinu
double m_sinu[1024][14]
Definition: LArStraightElectrodes.h:20
LArStraightElectrodes::HalfLength
double HalfLength(int stackid, int cellid) const
Definition: LArStraightElectrodes.h:28