ATLAS Offline Software
CaloTTDescrManager.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 /***************************************************************************
6  Calorimeter LVL1 TT description package
7  -----------------------------------------
8  ***************************************************************************/
9 
10 //<doc><file> $Id: CaloTTDescrManager.h,v 1.9 2007-06-19 12:58:56 fledroit Exp $
11 //<version> $Name: not supported by cvs2svn $
12 
13 #ifndef CALODETDESCR_CALOTTDESCRMANAGER_H
14 #define CALODETDESCR_CALOTTDESCRMANAGER_H
15 
16 #include "Identifier/Identifier.h"
17 #include "AthenaKernel/CLASS_DEF.h"
18 #include <vector>
19 #include <map>
20 
21 // Forward declarations
22 class CaloTTDescrRegion;
23 class CaloTTDescriptor;
24 class CaloLVL1_ID;
25 
70 {
71  public:
72 
73  typedef std::vector <CaloTTDescrRegion*> calo_region_vec;
74  typedef calo_region_vec::size_type calo_region_vec_size;
75  typedef calo_region_vec::const_iterator calo_region_const_iterator;
76 
77  typedef std::vector <CaloTTDescriptor*> calo_descr_vec;
78  typedef calo_descr_vec::size_type calo_descr_size;
79  typedef calo_descr_vec::const_iterator calo_descr_const_iterator;
80 
81  CaloTTDescrManager(void);
82 
84 
85 
87  CaloTTDescrRegion* find_calo_region (const Identifier& tower_id) const;
94 
101 
103  const CaloLVL1_ID* get_lvl1_id (void) const;
104 
105  void print (void) const;
106 
108  void initialize (void);
109  bool is_initialized (void) const;
110 
112  void add (CaloTTDescrRegion* region);
114  void add (CaloTTDescriptor* descriptor);
115 
117  void set_helper (const CaloLVL1_ID* id_helper);
118 
119 
120  private:
121 
122 
126 
128  void clear(void);
129 
130  typedef std::map <Identifier, CaloTTDescrRegion* > calo_region_map;
131 
140 
141 };
142 
143 //using the macros below we can assign an identifier (and a version)
144 //This is required and checked at compile time when you try to record/retrieve
145 CLASS_DEF( CaloTTDescrManager , 117659265 , 1 )
146 
147 #endif // CALODETDESCR_CALOTTDESCRMANAGER_H
CaloTTDescrManager::is_initialized
bool is_initialized(void) const
Definition: CaloTTDescrManager.cxx:100
CaloTTDescrManager::calo_descriptors_end
calo_descr_const_iterator calo_descriptors_end(void) const
End iterator on descriptors.
Definition: CaloTTDescrManager.cxx:75
CaloTTDescrManager::calo_descriptors_size
calo_descr_size calo_descriptors_size(void) const
Total number of descriptors.
Definition: CaloTTDescrManager.cxx:81
CaloTTDescrManager::calo_region_map
std::map< Identifier, CaloTTDescrRegion * > calo_region_map
Definition: CaloTTDescrManager.h:130
CaloTTDescrManager::CaloTTDescrManager
CaloTTDescrManager(void)
Definition: CaloTTDescrManager.cxx:23
CaloTTDescrManager::CaloTTDescrManager
CaloTTDescrManager(const CaloTTDescrManager &)
undefined semantics
CaloTTDescrManager::calo_region_end
calo_region_const_iterator calo_region_end(void) const
End iterator on Det Descr regions (== Trigger Towers)
Definition: CaloTTDescrManager.cxx:57
CaloTTDescrManager::calo_region_vec
std::vector< CaloTTDescrRegion * > calo_region_vec
Definition: CaloTTDescrManager.h:73
CaloTTDescrManager::calo_descriptors_begin
calo_descr_const_iterator calo_descriptors_begin(void) const
Begin iterator on descriptors.
Definition: CaloTTDescrManager.cxx:69
CaloTTDescrManager::m_calo_descr_vec
calo_descr_vec m_calo_descr_vec
vector of descriptors
Definition: CaloTTDescrManager.h:139
CaloTTDescrManager::calo_region_const_iterator
calo_region_vec::const_iterator calo_region_const_iterator
Definition: CaloTTDescrManager.h:75
CaloTTDescrManager::m_calo_region_vec
calo_region_vec m_calo_region_vec
vector of Det Descr regions (== Trigger Towers)
Definition: CaloTTDescrManager.h:136
CaloTTDescrManager::get_lvl1_id
const CaloLVL1_ID * get_lvl1_id(void) const
access to the offline identifier helper
Definition: CaloTTDescrManager.cxx:86
CaloTTDescrManager::set_helper
void set_helper(const CaloLVL1_ID *id_helper)
set the helper used to decode the TT offline identifiers
Definition: CaloTTDescrManager.cxx:121
CaloTTDescrManager::m_calo_region_map
calo_region_map m_calo_region_map
Definition: CaloTTDescrManager.h:137
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
CaloTTDescrManager::calo_descr_const_iterator
calo_descr_vec::const_iterator calo_descr_const_iterator
Definition: CaloTTDescrManager.h:79
CaloTTDescrManager::calo_descr_vec
std::vector< CaloTTDescriptor * > calo_descr_vec
Definition: CaloTTDescrManager.h:77
CaloTTDescrManager::m_calo_lvl1_id
const CaloLVL1_ID * m_calo_lvl1_id
Helper used to decode the TT offline identifiers.
Definition: CaloTTDescrManager.h:134
CaloTTDescrManager::operator=
CaloTTDescrManager & operator=(const CaloTTDescrManager &)
CaloLVL1_ID
Helper class for offline TT identifiers.
Definition: CaloLVL1_ID.h:66
CaloTTDescrManager::clear
void clear(void)
Delete towers and descriptors.
Definition: CaloTTDescrManager.cxx:143
CaloTTDescrManager::calo_region_vec_size
calo_region_vec::size_type calo_region_vec_size
Definition: CaloTTDescrManager.h:74
CaloTTDescrManager::calo_region_size
calo_region_vec_size calo_region_size(void) const
Total number of Det Descr regions (i.e.
Definition: CaloTTDescrManager.cxx:63
CaloTTDescrManager::calo_region_begin
calo_region_const_iterator calo_region_begin(void) const
Begin iterator on Det Descr regions (== Trigger Towers)
Definition: CaloTTDescrManager.cxx:51
CaloTTDescrManager::~CaloTTDescrManager
~CaloTTDescrManager()
Definition: CaloTTDescrManager.cxx:30
CaloTTDescrManager::add
void add(CaloTTDescrRegion *region)
Insertion in the vector of Det Descr regions (== Trigger Towers)
Definition: CaloTTDescrManager.cxx:107
CaloTTDescrManager::print
void print(void) const
Definition: CaloTTDescrManager.cxx:128
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
CaloTTDescrManager::m_is_initialized
bool m_is_initialized
Definition: CaloTTDescrManager.h:132
CaloTTDescrRegion
This class provides an interface to the geometrical description of the Calorimeter Trigger Towers.
Definition: CaloTTDescrRegion.h:48
CaloTTDescrManager
This class is used to build the CaloTTDescriptors and CaloTTDetDescrRegions carrying the geometry inf...
Definition: CaloTTDescrManager.h:70
CaloTTDescrManager::calo_descr_size
calo_descr_vec::size_type calo_descr_size
Definition: CaloTTDescrManager.h:78
CaloTTDescrManager::initialize
void initialize(void)
dummy.
Definition: CaloTTDescrManager.cxx:94
CaloTTDescriptor
This class holds the Calorimeter TriggerTower geometrical description
Definition: CaloTTDescriptor.h:30
CLASS_DEF.h
macros to associate a CLID to a type
CaloTTDescrManager::find_calo_region
CaloTTDescrRegion * find_calo_region(const Identifier &tower_id) const
Access to the Det Descr region (==Trigger Tower) corresponding to a TT identifier.
Definition: CaloTTDescrManager.cxx:37