5#ifndef TRIGINDETPATTRECOTOOLS_GNNR3_DATA_STORAGE_H
6#define TRIGINDETPATTRECOTOOLS_GNNR3_DATA_STORAGE_H
13#define MAX_SEG_PER_NODE 1000
22 inline float x()
const {
return m_x;}
23 inline float y()
const {
return m_y;}
26 inline float z()
const {
return m_z;}
27 inline float r()
const {
return m_r;}
35 unsigned int m_idx{std::numeric_limits<unsigned int>::max()};
46 return n1->
phi() < n2->
phi();
70 std::vector<const TrigFTF_GNNR3_Node*>
m_vn;
72 std::vector<std::vector<unsigned int> >
m_in;
94 if(idx >=
static_cast<int>(
m_etaBins.size())) idx = idx-1;
TrigFTF_GNNR3_DataStorage(const TrigFTF_GNNR3_Geometry &)
~TrigFTF_GNNR3_DataStorage()
int loadStripGraphNodes(short, const std::vector< TrigFTF_GNNR3_Node > &)
TrigFTF_GNNR3_EtaBin & getEtaBin(int idx)
const TrigFTF_GNNR3_Geometry & m_geo
unsigned int numberOfNodes() const
void initializeNodes(bool)
std::vector< TrigFTF_GNNR3_EtaBin > m_etaBins
void generatePhiIndexing(float)
int loadPixelGraphNodes(short, const std::vector< TrigFTF_GNNR3_Node > &, bool)
const TrigFTF_GNNR3_Node * m_n2
TrigFTF_GNNR3_Edge(const TrigFTF_GNNR3_Node *n1, const TrigFTF_GNNR3_Node *n2, float p1, float p2, float p3)
unsigned int m_vNei[N_SEG_CONNS]
const TrigFTF_GNNR3_Node * m_n1
void generatePhiIndexing(float)
float getMaxBinRadius() const
std::vector< std::array< float, 5 > > m_params
float getMinBinRadius() const
std::vector< const TrigFTF_GNNR3_Node * > m_vn
std::vector< std::pair< float, unsigned int > > m_vPhiNodes
std::vector< std::vector< unsigned int > > m_in
bool operator()(const TrigFTF_GNNR3_Edge *pE1, const TrigFTF_GNNR3_Edge *pE2)
bool operator()(const TrigFTF_GNNR3_Node *n1, const TrigFTF_GNNR3_Node *n2)
TrigFTF_GNNR3_Node(unsigned short l)
unsigned short layer() const
float pixelClusterWidth() const