|
|
|||
File indexing completed on 2026-04-17 07:46:28
0001 // This file is part of the ACTS project. 0002 // 0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project 0004 // 0005 // This Source Code Form is subject to the terms of the Mozilla Public 0006 // License, v. 2.0. If a copy of the MPL was not distributed with this 0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/. 0008 0009 #pragma once 0010 0011 namespace Acts::Experimental { 0012 0013 /// GBTS region-of-interest descriptor with eta/phi/zed bounds. 0014 class GbtsRoiDescriptor { 0015 public: 0016 /// @param eta eta of RoI 0017 /// @param etaMin eta at rear of RoI 0018 /// @param etaMax eta at front of RoI 0019 /// @param phi phi of RoI 0020 /// @param phiMin minimum phi of RoI 0021 /// @param phiMax maximum phi of RoI 0022 /// @param z z of RoI 0023 /// @param zMin z at rear of RoI 0024 /// @param zMax z at front of RoI 0025 GbtsRoiDescriptor(double eta, double etaMin, double etaMax, double phi, 0026 double phiMin, double phiMax, double z = 0, double zMin = 0, 0027 double zMax = 0); 0028 0029 // Methods to retrieve data members 0030 0031 /// Get phi coordinate of RoI center 0032 /// @return Phi coordinate 0033 double phi() const { return m_phi; } 0034 /// Get eta coordinate of RoI center 0035 /// @return Eta coordinate 0036 double eta() const { return m_eta; } 0037 /// Get z coordinate of RoI center 0038 /// @return Z coordinate 0039 double z() const { return m_z; } 0040 0041 /// these quantities probably don't need to be used any more 0042 /// - they are implemented here only because we had them in 0043 /// the original legacy interface 0044 0045 /// Get z at the most backward end of the RoI 0046 /// @return Z at rear 0047 double zMin() const { return m_zMin; } 0048 /// Get z at the most forward end of the RoI 0049 /// @return Z at front 0050 double zMax() const { return m_zMax; } 0051 0052 /// Gets eta at zMin 0053 /// @return Eta at rear 0054 double etaMin() const { return m_etaMin; } 0055 /// Gets eta at zMax 0056 /// @return Eta at front 0057 double etaMax() const { return m_etaMax; } 0058 0059 /// Gets phiMinus 0060 /// @return Minimum phi 0061 double phiMin() const { return m_phiMin; } 0062 /// Gets phiPlus 0063 /// @return Maximum phi 0064 double phiMax() const { return m_phiMax; } 0065 0066 // return the gradients 0067 /// Get dz/dr at the rear of the RoI 0068 /// @return Gradient dzdr at rear 0069 double dzdrMin() const { return m_dzdrMin; } 0070 /// Get dz/dr at the front of the RoI 0071 /// @return Gradient dzdr at front 0072 double dzdrMax() const { return m_dzdrMax; } 0073 0074 /// Get dr/dz at the rear of the RoI 0075 /// @return Gradient drdz at rear 0076 double drdzMin() const { return m_drdzMin; } 0077 /// Get dr/dz at the front of the RoI 0078 /// @return Gradient drdz at front 0079 double drdzMax() const { return m_drdzMax; } 0080 0081 /// Get z at the most backward end of the RoI at outer radius 0082 /// @return Z at rear outer radius 0083 double zOuterMin() const { return m_zOuterMin; } 0084 /// Get z at the most forward end of the RoI at outer radius 0085 /// @return Z at front outer radius 0086 double zOuterMax() const { return m_zOuterMax; } 0087 0088 private: 0089 float m_phi{}; //!< phi of RoI center 0090 float m_eta{}; //!< eta of RoI center 0091 float m_z{}; //!< z of RoI center 0092 0093 float m_phiMin{}; //!< most negative RoI in azimuthal 0094 float m_phiMax{}; //!< most positive RoI in azimuthal 0095 0096 float m_etaMin{}; //!< eta of RoI at zMax 0097 float m_etaMax{}; //!< eta of RoI at zMin 0098 0099 float m_zMin{}; //!< z position at most negative position along the beamline 0100 float m_zMax{}; //!< z position at most positive position along the beamline 0101 0102 float m_dzdrMin{}; //!< dz/dr at the rear of the RoI 0103 float m_dzdrMax{}; //!< dz/dr at the front of the RoI 0104 0105 float m_drdzMin{}; //!< dr/dz at the rear of the RoI 0106 float m_drdzMax{}; //!< dr/dz at the front of the RoI 0107 0108 float m_zOuterMin{}; //!< z at rear of RoI at the outer radius ( = 1100 mm) 0109 float m_zOuterMax{}; //!< z at front of RoI at the outer radius ( = 1100 mm) 0110 }; 0111 0112 } // namespace Acts::Experimental
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|