ATLAS Offline Software
GNN_Geometry.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGINDETPATTRECOTOOLS_GNN_GEOMETRY_H
6 #define TRIGINDETPATTRECOTOOLS_GNN_GEOMETRY_H
7 
8 #include<vector>
9 #include<map>
10 #include<algorithm>
11 
12 #include "FasTrackConnector.h"
13 
14 class TrigInDetSiLayer;
15 
17 public:
18  TrigFTF_GNN_Layer(const TrigInDetSiLayer&, float, int);
20 
21  int getEtaBin(float, float) const;
22 
23  float getMinBinRadius(int) const;
24  float getMaxBinRadius(int) const;
25 
26  int num_bins() const {return m_bins.size();}
27 
28  bool verifyBin(const TrigFTF_GNN_Layer*, int, int, float, float) const;
29 
31  std::vector<int> m_bins;//eta-bin indices
32  std::vector<float> m_minRadius;
33  std::vector<float> m_maxRadius;
34  std::vector<float> m_minBinCoord;
35  std::vector<float> m_maxBinCoord;
36 
38 
39 protected:
40 
42 
43  float m_r1, m_z1, m_r2, m_z2;
44  int m_nBins;
45  float m_etaBin;
46 
47 
48 };
49 
51 public:
52  TrigFTF_GNN_Geometry(const std::vector<TrigInDetSiLayer>&, const FASTRACK_CONNECTOR*);
54 
55  const TrigFTF_GNN_Layer* getTrigFTF_GNN_LayerByKey(unsigned int) const;
57 
58  int num_bins() const {return m_nEtaBins;}
59 
60 protected:
61 
63 
65 
66  std::map<unsigned int, TrigFTF_GNN_Layer*> m_layMap;
67  std::vector<TrigFTF_GNN_Layer*> m_layArray;
68 
70 
71 };
72 
73 
74 #endif
TrigFTF_GNN_Layer::m_minBinCoord
std::vector< float > m_minBinCoord
Definition: GNN_Geometry.h:34
TrigFTF_GNN_Layer::m_r2
float m_r2
Definition: GNN_Geometry.h:43
FasTrackConnector.h
TrigFTF_GNN_Layer::~TrigFTF_GNN_Layer
~TrigFTF_GNN_Layer()
Definition: GNN_Geometry.cxx:215
TrigFTF_GNN_Geometry::TrigFTF_GNN_Geometry
TrigFTF_GNN_Geometry(const std::vector< TrigInDetSiLayer > &, const FASTRACK_CONNECTOR *)
Definition: GNN_Geometry.cxx:219
TrigFTF_GNN_Layer::getMinBinRadius
float getMinBinRadius(int) const
Definition: GNN_Geometry.cxx:201
TrigFTF_GNN_Geometry::getTrigFTF_GNN_LayerByKey
const TrigFTF_GNN_Layer * getTrigFTF_GNN_LayerByKey(unsigned int) const
Definition: GNN_Geometry.cxx:276
TrigFTF_GNN_Geometry::m_nEtaBins
int m_nEtaBins
Definition: GNN_Geometry.h:69
TrigFTF_GNN_Geometry::m_layMap
std::map< unsigned int, TrigFTF_GNN_Layer * > m_layMap
Definition: GNN_Geometry.h:66
TrigFTF_GNN_Layer::m_bins
std::vector< int > m_bins
Definition: GNN_Geometry.h:31
TrigFTF_GNN_Geometry::m_etaBinWidth
float m_etaBinWidth
Definition: GNN_Geometry.h:64
TrigFTF_GNN_Layer::m_maxRadius
std::vector< float > m_maxRadius
Definition: GNN_Geometry.h:33
TrigFTF_GNN_Layer::m_z1
float m_z1
Definition: GNN_Geometry.h:43
FASTRACK_CONNECTOR
class FasTrackConnector FASTRACK_CONNECTOR
TrigFTF_GNN_Layer::m_etaBinWidth
float m_etaBinWidth
Definition: GNN_Geometry.h:41
TrigFTF_GNN_Layer::m_r1
float m_r1
Definition: GNN_Geometry.h:43
TrigFTF_GNN_Geometry::num_bins
int num_bins() const
Definition: GNN_Geometry.h:58
TrigFTF_GNN_Layer::m_nBins
int m_nBins
Definition: GNN_Geometry.h:44
TrigFTF_GNN_Layer::m_layer
const TrigInDetSiLayer & m_layer
Definition: GNN_Geometry.h:30
TrigFTF_GNN_Layer::m_z2
float m_z2
Definition: GNN_Geometry.h:43
TrigFTF_GNN_Geometry::~TrigFTF_GNN_Geometry
~TrigFTF_GNN_Geometry()
Definition: GNN_Geometry.cxx:269
TrigFTF_GNN_Geometry::m_layArray
std::vector< TrigFTF_GNN_Layer * > m_layArray
Definition: GNN_Geometry.h:67
TrigFTF_GNN_Layer::m_etaBin
float m_etaBin
Definition: GNN_Geometry.h:45
TrigFTF_GNN_Layer::TrigFTF_GNN_Layer
TrigFTF_GNN_Layer(const TrigInDetSiLayer &, float, int)
Definition: GNN_Geometry.cxx:13
TrigFTF_GNN_Layer::m_minEta
float m_minEta
Definition: GNN_Geometry.h:37
TrigFTF_GNN_Geometry::getTrigFTF_GNN_LayerByIndex
const TrigFTF_GNN_Layer * getTrigFTF_GNN_LayerByIndex(int) const
Definition: GNN_Geometry.cxx:284
TrigFTF_GNN_Layer
Definition: GNN_Geometry.h:16
TrigFTF_GNN_Layer::m_maxBinCoord
std::vector< float > m_maxBinCoord
Definition: GNN_Geometry.h:35
TrigFTF_GNN_Geometry
Definition: GNN_Geometry.h:50
TrigFTF_GNN_Layer::num_bins
int num_bins() const
Definition: GNN_Geometry.h:26
TrigFTF_GNN_Layer::verifyBin
bool verifyBin(const TrigFTF_GNN_Layer *, int, int, float, float) const
Definition: GNN_Geometry.cxx:124
TrigInDetSiLayer
Definition: TrigInDetSiLayer.h:8
TrigFTF_GNN_Layer::m_phiBinWidth
float m_phiBinWidth
Definition: GNN_Geometry.h:41
TrigFTF_GNN_Geometry::addNewLayer
const TrigFTF_GNN_Layer * addNewLayer(const TrigInDetSiLayer &, int)
Definition: GNN_Geometry.cxx:290
TrigFTF_GNN_Layer::getEtaBin
int getEtaBin(float, float) const
Definition: GNN_Geometry.cxx:184
TrigFTF_GNN_Layer::m_maxEta
float m_maxEta
Definition: GNN_Geometry.h:37
TrigFTF_GNN_Layer::getMaxBinRadius
float getMaxBinRadius(int) const
Definition: GNN_Geometry.cxx:208
TrigFTF_GNN_Layer::m_minRadius
std::vector< float > m_minRadius
Definition: GNN_Geometry.h:32