ATLAS Offline Software
LArFCalTowerStore.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LARRECUTILS_LARFCALTOWERSTORE_H
6 #define LARRECUTILS_LARFCALTOWERSTORE_H
7 
26 // include header files
28 
29 #include "CaloEvent/CaloTower.h"
30 #include "CaloEvent/CaloTowerContainer.h"
31 
32 #include <map>
33 #include <vector>
34 
36 
38 {
39  public:
40  typedef std::vector<std::pair<unsigned int,double> > tower_data_t;
41  typedef tower_data_t::const_iterator cell_iterator;
42  typedef std::vector<tower_data_t> tower_table_t;
43 
46 
49 
50  typedef tower_table_t::const_iterator tower_iterator;
52 
53  tower_iterator towers() const { return m_TTCmatrix.begin(); }
54 
67 
68 
70  cell_iterator firstCellofTower(tower_iterator t) const { return t->begin(); }
71  cell_iterator lastCellofTower (tower_iterator t) const { return t->end(); }
72  unsigned int towerSize(tower_iterator t) const {return t->size();}
73 
75  bool buildLookUp(const CaloCell_ID& cellIdHelper,
76  const CaloDetDescrManager& theManager,
77  CaloTowerContainer* theTowers);
78 
80  size_t size() const { return m_TTCmatrix.size(); }
81 
82  private:
83 
84  std::vector<unsigned int> m_ndxFCal;
85  std::vector<unsigned int> m_ndyFCal;
86 
87  size_t m_indxOffset;
88  size_t m_indxBound;
89 
90  tower_table_t m_TTCmatrix; // vector of cell indices for each tower.
91 };
92 #endif
LArFCalTowerStore::cell_iterator
tower_data_t::const_iterator cell_iterator
Definition: LArFCalTowerStore.h:41
CaloTowerSeg::SubSegIterator
Iterator over a rectangular window of towers.
Definition: CaloTowerSeg.h:337
LArFCalTowerStore::size
size_t size() const
size of internal data store
Definition: LArFCalTowerStore.h:80
LArFCalTowerStore::towers
tower_iterator towers() const
Definition: LArFCalTowerStore.h:53
LArFCalTowerStore::lastCellofTower
cell_iterator lastCellofTower(tower_iterator t) const
Definition: LArFCalTowerStore.h:71
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
LArFCalTowerStore::firstCellofTower
cell_iterator firstCellofTower(tower_iterator t) const
iterators: cells
Definition: LArFCalTowerStore.h:70
LArFCalTowerStore::tower_data_t
std::vector< std::pair< unsigned int, double > > tower_data_t
Definition: LArFCalTowerStore.h:40
LArFCalTowerStore
Intermediate store for cell/tower maps.
Definition: LArFCalTowerStore.h:38
CaloTowerSeg::SubSeg
A rectangular window within the segmentation.
Definition: CaloTowerSeg.h:220
LArFCalTowerStore::m_TTCmatrix
tower_table_t m_TTCmatrix
Definition: LArFCalTowerStore.h:90
CaloTowerContainer
Storable container class for CaloTower.
Definition: Calorimeter/CaloEvent/CaloEvent/CaloTowerContainer.h:77
LArFCalTowerStore::m_indxOffset
size_t m_indxOffset
Definition: LArFCalTowerStore.h:87
CaloCell_ID
Helper class for offline cell identifiers.
Definition: CaloCell_ID.h:34
LArFCalTowerStore::m_indxBound
size_t m_indxBound
Definition: LArFCalTowerStore.h:88
IdentifierHash.h
LArFCalTowerStore::towerSize
unsigned int towerSize(tower_iterator t) const
Definition: LArFCalTowerStore.h:72
LArFCalTowerStore::m_ndxFCal
std::vector< unsigned int > m_ndxFCal
Definition: LArFCalTowerStore.h:84
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition: CaloDetDescrManager.h:473
LArFCalTowerStore::tower_iterator
tower_table_t::const_iterator tower_iterator
Definition: LArFCalTowerStore.h:50
LArFCalTowerStore::m_ndyFCal
std::vector< unsigned int > m_ndyFCal
Definition: LArFCalTowerStore.h:85
LArFCalTowerStore::tower_table_t
std::vector< tower_data_t > tower_table_t
Definition: LArFCalTowerStore.h:42
LArFCalTowerStore::tower_subseg_iterator
CaloTowerSeg::SubSegIterator< tower_iterator > tower_subseg_iterator
Definition: LArFCalTowerStore.h:51
LArFCalTowerStore::~LArFCalTowerStore
~LArFCalTowerStore()
destructor
Definition: LArFCalTowerStore.cxx:59
LArFCalTowerStore::LArFCalTowerStore
LArFCalTowerStore()
constructor
Definition: LArFCalTowerStore.cxx:41
LArFCalTowerStore::buildLookUp
bool buildLookUp(const CaloCell_ID &cellIdHelper, const CaloDetDescrManager &theManager, CaloTowerContainer *theTowers)
setup trigger
Definition: LArFCalTowerStore.cxx:68