ATLAS Offline Software
TileCellCont.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TILECELLCONT_H
6 #define TILECELLCONT_H
7 
9 
10 #include <map>
11 #include <vector>
12 
13 class TileCellCollection;
14 class TileHid2RESrcID;
15 
16 
24 class TileCellCont : public std::vector<TileCellCollection*>
25 {
26 
27  public:
28 
30 
32  TileCellCont( ) ;
33 
35  const std::vector<TileCellCollection*>::const_iterator find(const unsigned int& id) const ;
36  unsigned int find_rod(const unsigned int& id) const ;
37 
39  virtual ~TileCellCont() { }
40 
47  const std::vector<int>& Rw2CellMap ( int section ) {
48  return m_Rw2Cell[section];
49  }
50  const TileCellCollection* MBTS_collection( void ) const
51  { return m_MBTS; }
53  { return m_MBTS; }
54  std::map<unsigned int, unsigned int>& MBTS_map ( void )
55  { return m_mapMBTS; }
56  const std::vector<unsigned int>* MBTS_RODs()
57  { return &m_mbts_rods; }
58  const std::vector<unsigned int>* MBTS_IDs()
59  { return &m_mbts_IDs; }
60  int MBTS_channel ( void ) { return m_MBTS_channel; }
61 
62  StatusCode initialize( void ) ;
63  StatusCode finalize( void ) ;
65  { m_src = p; }
66 
68  { return m_src; }
69 
70  void eventNumber ( const unsigned int eN) { m_event=eN; };
71  unsigned int eventNumber ( ) const { return m_event; } ;
72  bool cached( const unsigned int&rodid ){
73  if ( m_eventNumber[rodid] != m_event ) { // Decoding a new event
74  // Keep track of last decoded number
75  m_eventNumber[rodid] = m_event;
76  return false;
77  } else return true;
78  }
79  const std::vector<int>& Rw2PmtMap ( int section ) {
80  return m_Rw2Pmt[section];
81  }
82 
83 private:
84 
86  // One needs to keep track of Rw2Cell
87  std::vector<int> m_Rw2Cell[4];
88  // One needs to keep track of Rw2Pmt
89  std::vector<int> m_Rw2Pmt[4];
91  std::vector<unsigned int> m_eventNumber;
93  unsigned int m_event;
94  // No Region Selector for MBTS
95  std::vector<unsigned int> m_mbts_rods;
96  std::vector<unsigned int> m_mbts_IDs;
98  std::map<unsigned int, unsigned int> m_mapMBTS;
102 
103 };
104 
105 #endif
106 
TileCellCont::find_rod
unsigned int find_rod(const unsigned int &id) const
Definition: TileCellCont.cxx:221
TileCellCont::MBTS_RODs
const std::vector< unsigned int > * MBTS_RODs()
Definition: TileCellCont.h:56
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
TileCellCollection
Definition: TileCellCollection.h:12
TileCellCont::m_Rw2Cell
std::vector< int > m_Rw2Cell[4]
Definition: TileCellCont.h:87
TileCellCont::getHashIdToROD
const TileHid2RESrcID * getHashIdToROD() const
Definition: TileCellCont.h:67
TileCellCont::m_Rw2Pmt
std::vector< int > m_Rw2Pmt[4]
Definition: TileCellCont.h:89
TileCellCont::TileCellCont
TileCellCont()
constructor
Definition: TileCellCont.cxx:32
TileCellCont::Rw2PmtMap
const std::vector< int > & Rw2PmtMap(int section)
Definition: TileCellCont.h:79
TileCellCont::setHashIdToROD
void setHashIdToROD(const TileHid2RESrcID *p)
Definition: TileCellCont.h:64
TileCellCont::eventNumber
unsigned int eventNumber() const
Definition: TileCellCont.h:71
TileHid2RESrcID
This class provides conversion between fragment ID and RESrcID.
Definition: TileHid2RESrcID.h:28
TileCellCont::find
const std::vector< TileCellCollection * >::const_iterator find(const unsigned int &id) const
Finds a collection.
Definition: TileCellCont.cxx:194
TileRodIdHash.h
TileCellCont::IDENTIFIABLE
TileCellCollection IDENTIFIABLE
Definition: TileCellCont.h:29
TileCellCont::eventNumber
void eventNumber(const unsigned int eN)
Definition: TileCellCont.h:70
TileCellCont::m_mbts_IDs
std::vector< unsigned int > m_mbts_IDs
Definition: TileCellCont.h:96
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TileCellCont::Rw2CellMap
const std::vector< int > & Rw2CellMap(int section)
Definition: TileCellCont.h:47
TileCellCont
This class builds the Tile cells.
Definition: TileCellCont.h:25
TileCellCont::m_mbts_rods
std::vector< unsigned int > m_mbts_rods
Definition: TileCellCont.h:95
TileCellCont::~TileCellCont
virtual ~TileCellCont()
destructor
Definition: TileCellCont.h:39
TileCellCont::MBTS_collection
const TileCellCollection * MBTS_collection(void) const
Definition: TileCellCont.h:50
TileCellCont::m_event
unsigned int m_event
this event number
Definition: TileCellCont.h:93
TileCellCont::m_MBTS
TileCellCollection * m_MBTS
Definition: TileCellCont.h:97
TileCellCont::m_src
const TileHid2RESrcID * m_src
map Hash ID to ROD
Definition: TileCellCont.h:101
TileCellCont::cached
bool cached(const unsigned int &rodid)
Definition: TileCellCont.h:72
TileCellCont::MBTS_channel
int MBTS_channel(void)
Definition: TileCellCont.h:60
TileCellCont::MBTS_collection
TileCellCollection * MBTS_collection(void)
Definition: TileCellCont.h:52
TileCellCont::MBTS_map
std::map< unsigned int, unsigned int > & MBTS_map(void)
Definition: TileCellCont.h:54
TileRodIdHash
Table to convert ROB ID to fragment hash.
Definition: TileRodIdHash.h:19
TileCellCont::initialize
StatusCode initialize(void)
Definition: TileCellCont.cxx:39
section
void section(const std::string &sec)
Definition: TestTriggerMenuAccess.cxx:22
TileCellCont::m_hash
TileRodIdHash m_hash
Definition: TileCellCont.h:85
TileCellCont::MBTS_IDs
const std::vector< unsigned int > * MBTS_IDs()
Definition: TileCellCont.h:58
TileCellCont::m_mapMBTS
std::map< unsigned int, unsigned int > m_mapMBTS
Definition: TileCellCont.h:98
TileCellCont::finalize
StatusCode finalize(void)
Definition: TileCellCont.cxx:198
TileCellCont::m_MBTS_channel
int m_MBTS_channel
Definition: TileCellCont.h:99
TileCellCont::m_eventNumber
std::vector< unsigned int > m_eventNumber
eventNumber of a given Collection
Definition: TileCellCont.h:91