ATLAS Offline Software
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
LVL1::L1CaloMonitoringCaloTool Class Reference

#include <L1CaloMonitoringCaloTool.h>

Inheritance diagram for LVL1::L1CaloMonitoringCaloTool:
Collaboration diagram for LVL1::L1CaloMonitoringCaloTool:

Public Member Functions

 L1CaloMonitoringCaloTool (const std::string &name)
 Create a proper constructor for Athena. More...
 
virtual ~L1CaloMonitoringCaloTool ()
 destructor More...
 
 L1CaloMonitoringCaloTool ()=delete
 delete the big 4 More...
 
 L1CaloMonitoringCaloTool (const L1CaloMonitoringCaloTool &rhs)=delete
 
 L1CaloMonitoringCaloTool (L1CaloMonitoringCaloTool &&rhs)=delete
 
L1CaloMonitoringCaloTooloperator= (const L1CaloMonitoringCaloTool &rhs)=delete
 
virtual StatusCode initialize ()
 Dummy implementation of the initialisation function. More...
 
virtual StatusCode finalize ()
 
StatusCode loadCaloCells ()
 Declare the interface that the class provides. More...
 
float et (const Identifier &ttid) const
 
float caloQuality (const Identifier &ttid) const
 
virtual void print () const
 Print the state of the tool. More...
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
 
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

int towerIndex (const Identifier &ttId) const
 
int region (const int index) const
 
int etaBin (const int index) const
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

SG::ReadCondHandleKey< LArOnOffIdMappingm_cablingKey {this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"}
 
ToolHandle< LVL1::IL1CaloMatchCell2Towerm_cellMatch { this, "L1CaloMatchCell2Tower", "LVL1::L1CaloMatchCell2Tower", "L1CaloMatchCell2Tower" }
 
const CaloLVL1_IDm_lvl1Helper
 
std::string m_caloCellContainerName
 
std::vector< float > m_energySums
 
std::vector< float > m_quality
 
std::vector< float > m_denom
 
std::vector< float > m_sinTh
 
std::vector< unsigned int > m_cellIds
 
std::vector< int > m_ttIdx
 
unsigned int m_maxCells
 
int m_events
 
int m_lastRun
 
int m_lastEvent
 
int m_sideOffset
 
int m_layerOffset
 
std::vector< int > m_binOffset
 
std::vector< int > m_indexOffset
 
std::vector< int > m_etaShift
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Static Private Attributes

static const int s_maxTowers = 7168
 
static const int s_nregions = 4
 
static const int s_nsinThBins = 33
 

Detailed Description

Definition at line 36 of file L1CaloMonitoringCaloTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ L1CaloMonitoringCaloTool() [1/4]

LVL1::L1CaloMonitoringCaloTool::L1CaloMonitoringCaloTool ( const std::string &  name)

Create a proper constructor for Athena.

constructor

Definition at line 42 of file L1CaloMonitoringCaloTool.cxx.

42  :
43  asg::AsgTool( name ),
44  m_lvl1Helper(nullptr),
45  m_sinTh(s_nsinThBins, 0.),
46  m_events(0),
47  m_lastRun(0),
48  m_lastEvent(0),
49  m_sideOffset(0),
50  m_layerOffset(0),
54 /*---------------------------------------------------*/
55 {
56  declareProperty("CaloCellContainer", m_caloCellContainerName = "AllCalo");
57  declareProperty("MappingVectorSize", m_maxCells = 188080);
58 }

◆ ~L1CaloMonitoringCaloTool()

virtual LVL1::L1CaloMonitoringCaloTool::~L1CaloMonitoringCaloTool ( )
inlinevirtual

destructor

Definition at line 45 of file L1CaloMonitoringCaloTool.h.

45 {}

◆ L1CaloMonitoringCaloTool() [2/4]

LVL1::L1CaloMonitoringCaloTool::L1CaloMonitoringCaloTool ( )
delete

delete the big 4

◆ L1CaloMonitoringCaloTool() [3/4]

LVL1::L1CaloMonitoringCaloTool::L1CaloMonitoringCaloTool ( const L1CaloMonitoringCaloTool rhs)
delete

◆ L1CaloMonitoringCaloTool() [4/4]

LVL1::L1CaloMonitoringCaloTool::L1CaloMonitoringCaloTool ( L1CaloMonitoringCaloTool &&  rhs)
delete

Member Function Documentation

◆ caloQuality()

float LVL1::L1CaloMonitoringCaloTool::caloQuality ( const Identifier ttid) const
virtual

Implements LVL1::IL1CaloMonitoringCaloTool.

Definition at line 282 of file L1CaloMonitoringCaloTool.cxx.

283 {
284  float q = -1e6;
285  const int index = towerIndex(ttId);
286  if (index < s_maxTowers) q = m_quality[index];
287  return q;
288 }

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKeyArray>

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  hndl,
const SG::VarHandleKeyType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleBase>

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ et()

float LVL1::L1CaloMonitoringCaloTool::et ( const Identifier ttid) const
virtual

Implements LVL1::IL1CaloMonitoringCaloTool.

Definition at line 272 of file L1CaloMonitoringCaloTool.cxx.

273 {
274  float e = 0.;
275  const int index = towerIndex(ttId);
277  return e;
278 }

◆ etaBin()

int LVL1::L1CaloMonitoringCaloTool::etaBin ( const int  index) const
private

Definition at line 325 of file L1CaloMonitoringCaloTool.cxx.

326 {
327  int bin = 0;
328  int ix = index;
329  if (ix >= m_layerOffset) ix -= m_layerOffset;
330  if (ix >= m_sideOffset) ix -= m_sideOffset;
331  for (int r = s_nregions-1; r >= 0; --r) {
332  if (ix >= m_indexOffset[r]) {
333  const int ieta = (ix - m_indexOffset[r])>>(m_etaShift[r]);
334  bin = m_binOffset[r] + ieta;
335  break;
336  }
337  }
338  return bin;
339 }

◆ evtStore() [1/2]

ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( ) const
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase &  ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ finalize()

StatusCode LVL1::L1CaloMonitoringCaloTool::finalize ( )
virtual

Definition at line 129 of file L1CaloMonitoringCaloTool.cxx.

131 {
132  return StatusCode::SUCCESS;
133 }

◆ getKey()

SG::sgkey_t asg::AsgTool::getKey ( const void *  ptr) const
inherited

Get the (hashed) key of an object that is in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the SG::sgkey_t key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getName
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The hashed key of the object in the store. If not found, an invalid (zero) key.

Definition at line 119 of file AsgTool.cxx.

119  {
120 
121 #ifdef XAOD_STANDALONE
122  // In case we use @c xAOD::TEvent, we have a direct function call
123  // for this.
124  return evtStore()->event()->getKey( ptr );
125 #else
126  const SG::DataProxy* proxy = evtStore()->proxy( ptr );
127  return ( proxy == nullptr ? 0 : proxy->sgkey() );
128 #endif // XAOD_STANDALONE
129  }

◆ getName()

const std::string & asg::AsgTool::getName ( const void *  ptr) const
inherited

Get the name of an object that is / should be in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the std::string name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getKey
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The string name of the object in the store. If not found, an empty string.

Definition at line 106 of file AsgTool.cxx.

106  {
107 
108 #ifdef XAOD_STANDALONE
109  // In case we use @c xAOD::TEvent, we have a direct function call
110  // for this.
111  return evtStore()->event()->getName( ptr );
112 #else
113  const SG::DataProxy* proxy = evtStore()->proxy( ptr );
114  static const std::string dummy = "";
115  return ( proxy == nullptr ? dummy : proxy->name() );
116 #endif // XAOD_STANDALONE
117  }

◆ getProperty()

template<class T >
const T* asg::AsgTool::getProperty ( const std::string &  name) const
inherited

Get one of the tool's properties.

◆ initialize()

StatusCode LVL1::L1CaloMonitoringCaloTool::initialize ( )
virtual

Dummy implementation of the initialisation function.

It's here to allow the dual-use tools to skip defining an initialisation function. Since many are doing so...

Reimplemented from asg::AsgTool.

Definition at line 61 of file L1CaloMonitoringCaloTool.cxx.

63 {
64  ATH_MSG_INFO("Initializing " << name());
65 
66  ATH_CHECK( m_cellMatch.retrieve() );
67 
68  StatusCode sc;
69 
70  // Get LVL1 idhelper from detector store
71  const CaloLVL1_ID* lvl1_id = 0;
72  sc = detStore()->retrieve(lvl1_id, "CaloLVL1_ID");
73  if (sc.isFailure() || !lvl1_id) {
74  ATH_MSG_ERROR("Could not get CaloLVL1_ID helper !");
75  return sc;
76  }
77  else {
78  m_lvl1Helper = static_cast<const CaloLVL1_ID*> (lvl1_id);
79  }
80 
81  // Set up cell to tt mapping arrays
82  const unsigned int maxCaloCells = 188080;
83  if (m_maxCells > maxCaloCells) m_maxCells = maxCaloCells;
84  if (m_maxCells > 0) {
85  m_cellIds.reserve(m_maxCells);
86  m_cellIds.assign(m_maxCells, 0);
87  m_ttIdx.reserve(m_maxCells);
88  m_ttIdx.assign(m_maxCells, 0);
89  }
90  m_energySums.reserve(s_maxTowers);
91  m_quality.reserve(s_maxTowers);
92  m_denom.reserve(s_maxTowers);
93 
94  // Set up arrays for indexing and sinTh
95  int binsEta[s_nregions] = { 25, 3, 1, 4 };
96  int binsPhi[s_nregions] = { 64, 32, 32, 16 };
97  double grans[s_nregions] = { 0.1, 0.2, 0.1, 0.425 };
98  double etaOffset[s_nregions] = { 0., 2.5, 3.1, 3.2 };
99  int bin = 0;
100  for (int r = 0; r < s_nregions; ++r) {
101  if (r == 0) {
102  m_binOffset[r] = 0;
103  m_indexOffset[r] = 0;
104  } else {
105  m_binOffset[r] = binsEta[r-1] + m_binOffset[r-1];
106  m_indexOffset[r] = binsEta[r-1]*binsPhi[r-1] + m_indexOffset[r-1];
107  }
108  m_etaShift[r] = 0;
109  int shift = binsPhi[r] - 1;
110  while (shift) {
111  m_etaShift[r]++;
112  shift>>=1;
113  }
114  for (int i = 0; i < binsEta[r]; ++i) {
115  double eta = etaOffset[r] + (i+0.5)*grans[r];
116  m_sinTh[bin++] = 1./(1000.*std::cosh(eta)); // include MeV->GeV conversion
117  }
118  }
119  m_sideOffset = binsEta[s_nregions-1]*binsPhi[s_nregions-1] + m_indexOffset[s_nregions-1];
121 
123 
124  return StatusCode::SUCCESS;
125 
126 }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ loadCaloCells()

StatusCode LVL1::L1CaloMonitoringCaloTool::loadCaloCells ( )
virtual

Declare the interface that the class provides.

Implements LVL1::IL1CaloMonitoringCaloTool.

Definition at line 136 of file L1CaloMonitoringCaloTool.cxx.

138 {
139  const bool debug = msgLvl(MSG::DEBUG);
140  if (debug) {
141  ATH_MSG_DEBUG("in loadCaloCells()");
142  }
143 
144  StatusCode sc;
145 
146  // Don't run more than once per event
147 
148  const EventContext& ctx = Gaudi::Hive::currentContext();
149  int eventNumber = ctx.eventID().event_number();
150  int runNumber = ctx.eventID().run_number();
152  return StatusCode::SUCCESS;
153  }
156 
157  // Retreive Calo Cell collection from SG
158 
159  const CaloCellContainer* caloCellContainer = 0;
160  sc = evtStore()->retrieve(caloCellContainer, m_caloCellContainerName);
161  if(!sc.isSuccess() || !caloCellContainer) {
162  ATH_MSG_WARNING("No CaloCellContainer found at AllCalo");
163  return StatusCode::SUCCESS;
164  }
165  ++m_events;
166 
167  // Get Et and CaloQuality corresponding to TTs
168 
169  CaloCellContainer::const_iterator CaloCellIterator = caloCellContainer->begin();
170  CaloCellContainer::const_iterator CaloCellIteratorEnd = caloCellContainer->end();
171  m_energySums.assign(s_maxTowers, 0.0);
172  m_quality.assign(s_maxTowers, 0.0);
173  m_denom.assign(s_maxTowers, 0.0);
174  unsigned int cellIdsIndex = 0;
175 
177 
178  for (; CaloCellIterator != CaloCellIteratorEnd; ++CaloCellIterator) {
179 
180  const CaloCell* caloCell(*CaloCellIterator);
181  const Identifier cellId(caloCell->ID());
182  const Identifier invalidId(0);
183  Identifier ttId1(0);
184  Identifier ttId2(0);
185 
186  // Use cell ordering to avoid unnecessary calls to mapping tools
187 
188  int index1 = s_maxTowers;
189  int index2 = s_maxTowers;
190  const unsigned int cellId32 = cellId.get_identifier32().get_compact();
191  if (m_events == 1) {
192  m_cellMatch->matchCell2Tower(**cabling, caloCell, ttId1, ttId2);
193  if (ttId1 != invalidId) index1 = towerIndex(ttId1);
194  if (ttId2 != invalidId) index2 = towerIndex(ttId2);
195  if (cellIdsIndex < m_maxCells-1) {
196  m_cellIds[cellIdsIndex] = cellId32;
197  m_ttIdx[cellIdsIndex++] = index1;
198  if (ttId2 != invalidId) {
199  m_cellIds[cellIdsIndex] = cellId32;
200  m_ttIdx[cellIdsIndex++] = index2;
201  }
202  }
203  } else {
204  if ((cellIdsIndex < m_maxCells-1) && (m_cellIds[cellIdsIndex] == cellId32)) {
205  index1 = m_ttIdx[cellIdsIndex++];
206  if (m_cellIds[cellIdsIndex] == cellId32) index2 = m_ttIdx[cellIdsIndex++];
207  } else {
208  m_cellMatch->matchCell2Tower(**cabling, caloCell, ttId1, ttId2);
209  if (ttId1 != invalidId) index1 = towerIndex(ttId1);
210  if (ttId2 != invalidId) index2 = towerIndex(ttId2);
211  }
212  }
213 
214  // Get Et/Energy and CaloQuality
215 
216  if (index1 < s_maxTowers) {
217  const float energy = caloCell->energy();
218  const CaloDetDescrElement* caloDDE = caloCell->caloDDE();
219  if (index2 < s_maxTowers) { // Tile D cells
220  const float energy2 = energy*0.5;
221  m_energySums[index1] += energy2;
222  m_energySums[index2] += energy2;
223  const TileCell* tileCell = dynamic_cast<const TileCell*>(caloCell);
224  if (tileCell && (tileCell->provenance() & 0x8080)) {
225  const float qual = energy2 * std::max(tileCell->qual1(), tileCell->qual2());
226  m_quality[index1] += qual;
227  m_quality[index2] += qual;
228  m_denom[index1] += energy2;
229  m_denom[index2] += energy2;
230  }
231  } else {
232  if (caloDDE->is_lar_fcal()) {
233  m_energySums[index1] += energy*caloDDE->sinTh();
234  } else m_energySums[index1] += energy;
235  if (caloDDE->is_tile()) {
236  const TileCell* tileCell = dynamic_cast<const TileCell*>(caloCell);
237  if (tileCell && (tileCell->provenance() & 0x8080)) {
238  m_quality[index1] += energy * std::max(tileCell->qual1(), tileCell->qual2());
239  m_denom[index1] += energy;
240  }
241  } else {
242  if (caloCell->provenance() & 0x2000) {
243  m_quality[index1] += (energy * caloCell->quality());
244  m_denom[index1] += energy;
245  }
246  }
247  }
248  }
249  }
250 
251  // Compute final quantities
252 
253  for (int index = 0; index < s_maxTowers; ++index) {
254  if (region(index) == 3) { // FCAL
255  m_energySums[index] *= 1e-3;
256  } else {
257  const int bin = etaBin(index);
259  }
260  if ( m_denom[index] != 0.) {
262  } else {
263  m_quality[index] = -1e6; // error value
264  }
265  }
266 
267  return StatusCode::SUCCESS;
268 }

◆ msg() [1/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msg_level_name()

const std::string & asg::AsgTool::msg_level_name ( ) const
inherited

A deprecated function for getting the message level's name.

Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:

MSG::name( msg().level() )

This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.

Returns
The string name of the current minimum message level that's printed

Definition at line 101 of file AsgTool.cxx.

101  {
102 
103  return MSG::name( msg().level() );
104  }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ operator=()

L1CaloMonitoringCaloTool& LVL1::L1CaloMonitoringCaloTool::operator= ( const L1CaloMonitoringCaloTool rhs)
delete

◆ outputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ print()

void asg::AsgTool::print ( ) const
virtualinherited

◆ region()

int LVL1::L1CaloMonitoringCaloTool::region ( const int  index) const
private

Definition at line 308 of file L1CaloMonitoringCaloTool.cxx.

309 {
310  int rg = 0;
311  int ix = index;
312  if (ix >= m_layerOffset) ix -= m_layerOffset;
313  if (ix >= m_sideOffset) ix -= m_sideOffset;
314  for (int r = s_nregions-1; r >= 0; --r) {
315  if (ix >= m_indexOffset[r]) {
316  rg = r;
317  break;
318  }
319  }
320  return rg;
321 }

◆ renounce()

std::enable_if_t<std::is_void_v<std::result_of_t<decltype(&T::renounce)(T)> > && !std::is_base_of_v<SG::VarHandleKeyArray, T> && std::is_base_of_v<Gaudi::DataHandle, T>, void> AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ towerIndex()

int LVL1::L1CaloMonitoringCaloTool::towerIndex ( const Identifier ttId) const
private

Definition at line 292 of file L1CaloMonitoringCaloTool.cxx.

293 {
294  const int side = m_lvl1Helper->pos_neg_z(ttId);
295  const int layer = m_lvl1Helper->sampling(ttId);
296  const int region = m_lvl1Helper->region(ttId);
297  const int ieta = m_lvl1Helper->eta(ttId);
298  const int iphi = m_lvl1Helper->phi(ttId);
299  int index = 0;
300  index = m_indexOffset[region] + (ieta<<(m_etaShift[region])) + iphi;
301  if (side < 0) index += m_sideOffset;
302  if (layer > 0) index += m_layerOffset;
303  return index;
304 }

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase &  )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308  {
309  // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310  // << " size: " << m_vhka.size() << endmsg;
311  for (auto &a : m_vhka) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_binOffset

std::vector<int> LVL1::L1CaloMonitoringCaloTool::m_binOffset
private

Definition at line 87 of file L1CaloMonitoringCaloTool.h.

◆ m_cablingKey

SG::ReadCondHandleKey<LArOnOffIdMapping> LVL1::L1CaloMonitoringCaloTool::m_cablingKey {this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"}
private

Definition at line 65 of file L1CaloMonitoringCaloTool.h.

◆ m_caloCellContainerName

std::string LVL1::L1CaloMonitoringCaloTool::m_caloCellContainerName
private

Definition at line 72 of file L1CaloMonitoringCaloTool.h.

◆ m_cellIds

std::vector<unsigned int> LVL1::L1CaloMonitoringCaloTool::m_cellIds
private

Definition at line 78 of file L1CaloMonitoringCaloTool.h.

◆ m_cellMatch

ToolHandle<LVL1::IL1CaloMatchCell2Tower> LVL1::L1CaloMonitoringCaloTool::m_cellMatch { this, "L1CaloMatchCell2Tower", "LVL1::L1CaloMatchCell2Tower", "L1CaloMatchCell2Tower" }
private

Definition at line 68 of file L1CaloMonitoringCaloTool.h.

◆ m_denom

std::vector<float> LVL1::L1CaloMonitoringCaloTool::m_denom
private

Definition at line 76 of file L1CaloMonitoringCaloTool.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_energySums

std::vector<float> LVL1::L1CaloMonitoringCaloTool::m_energySums
private

Definition at line 74 of file L1CaloMonitoringCaloTool.h.

◆ m_etaShift

std::vector<int> LVL1::L1CaloMonitoringCaloTool::m_etaShift
private

Definition at line 89 of file L1CaloMonitoringCaloTool.h.

◆ m_events

int LVL1::L1CaloMonitoringCaloTool::m_events
private

Definition at line 82 of file L1CaloMonitoringCaloTool.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_indexOffset

std::vector<int> LVL1::L1CaloMonitoringCaloTool::m_indexOffset
private

Definition at line 88 of file L1CaloMonitoringCaloTool.h.

◆ m_lastEvent

int LVL1::L1CaloMonitoringCaloTool::m_lastEvent
private

Definition at line 84 of file L1CaloMonitoringCaloTool.h.

◆ m_lastRun

int LVL1::L1CaloMonitoringCaloTool::m_lastRun
private

Definition at line 83 of file L1CaloMonitoringCaloTool.h.

◆ m_layerOffset

int LVL1::L1CaloMonitoringCaloTool::m_layerOffset
private

Definition at line 86 of file L1CaloMonitoringCaloTool.h.

◆ m_lvl1Helper

const CaloLVL1_ID* LVL1::L1CaloMonitoringCaloTool::m_lvl1Helper
private

Definition at line 70 of file L1CaloMonitoringCaloTool.h.

◆ m_maxCells

unsigned int LVL1::L1CaloMonitoringCaloTool::m_maxCells
private

Definition at line 80 of file L1CaloMonitoringCaloTool.h.

◆ m_quality

std::vector<float> LVL1::L1CaloMonitoringCaloTool::m_quality
private

Definition at line 75 of file L1CaloMonitoringCaloTool.h.

◆ m_sideOffset

int LVL1::L1CaloMonitoringCaloTool::m_sideOffset
private

Definition at line 85 of file L1CaloMonitoringCaloTool.h.

◆ m_sinTh

std::vector<float> LVL1::L1CaloMonitoringCaloTool::m_sinTh
private

Definition at line 77 of file L1CaloMonitoringCaloTool.h.

◆ m_ttIdx

std::vector<int> LVL1::L1CaloMonitoringCaloTool::m_ttIdx
private

Definition at line 79 of file L1CaloMonitoringCaloTool.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.

◆ s_maxTowers

const int LVL1::L1CaloMonitoringCaloTool::s_maxTowers = 7168
staticprivate

Definition at line 91 of file L1CaloMonitoringCaloTool.h.

◆ s_nregions

const int LVL1::L1CaloMonitoringCaloTool::s_nregions = 4
staticprivate

Definition at line 92 of file L1CaloMonitoringCaloTool.h.

◆ s_nsinThBins

const int LVL1::L1CaloMonitoringCaloTool::s_nsinThBins = 33
staticprivate

Definition at line 93 of file L1CaloMonitoringCaloTool.h.


The documentation for this class was generated from the following files:
TileCell
Definition: TileCell.h:57
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
beamspotman.r
def r
Definition: beamspotman.py:672
LVL1::L1CaloMonitoringCaloTool::s_nregions
static const int s_nregions
Definition: L1CaloMonitoringCaloTool.h:92
LVL1::L1CaloMonitoringCaloTool::s_nsinThBins
static const int s_nsinThBins
Definition: L1CaloMonitoringCaloTool.h:93
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
LVL1::L1CaloMonitoringCaloTool::m_cellMatch
ToolHandle< LVL1::IL1CaloMatchCell2Tower > m_cellMatch
Definition: L1CaloMonitoringCaloTool.h:69
StateLessPT_NewConfig.proxy
proxy
Definition: StateLessPT_NewConfig.py:407
LVL1::L1CaloMonitoringCaloTool::m_events
int m_events
Definition: L1CaloMonitoringCaloTool.h:82
LVL1::L1CaloMonitoringCaloTool::m_indexOffset
std::vector< int > m_indexOffset
Definition: L1CaloMonitoringCaloTool.h:88
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:83
index
Definition: index.py:1
LVL1::L1CaloMonitoringCaloTool::m_denom
std::vector< float > m_denom
Definition: L1CaloMonitoringCaloTool.h:76
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
LVL1::L1CaloMonitoringCaloTool::m_lvl1Helper
const CaloLVL1_ID * m_lvl1Helper
Definition: L1CaloMonitoringCaloTool.h:70
LVL1::L1CaloMonitoringCaloTool::m_sinTh
std::vector< float > m_sinTh
Definition: L1CaloMonitoringCaloTool.h:77
ReadCellNoiseFromCool.cabling
cabling
Definition: ReadCellNoiseFromCool.py:154
bin
Definition: BinsDiffFromStripMedian.h:43
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
AthCommonMsg< AlgTool >::msgLvl
bool msgLvl(const MSG::Level lvl) const
Definition: AthCommonMsg.h:30
CaloLVL1_ID::region
int region(const Identifier id) const
return region according to :
Definition: CaloLVL1_ID.h:647
LVL1::L1CaloMonitoringCaloTool::m_cellIds
std::vector< unsigned int > m_cellIds
Definition: L1CaloMonitoringCaloTool.h:78
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
CaloCell::provenance
uint16_t provenance() const
get provenance (data member)
Definition: CaloCell.h:354
dbg::ptr
void * ptr(T *p)
Definition: SGImplSvc.cxx:74
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
TRT::Hit::side
@ side
Definition: HitInfo.h:83
CaloLVL1_ID::phi
int phi(const Identifier id) const
return phi according to :
Definition: CaloLVL1_ID.h:659
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
TileCell::qual2
uint8_t qual2(void) const
get quality of second PMT (data member)
Definition: TileCell.h:200
LVL1::L1CaloMonitoringCaloTool::m_etaShift
std::vector< int > m_etaShift
Definition: L1CaloMonitoringCaloTool.h:89
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:209
LVL1::L1CaloMonitoringCaloTool::m_maxCells
unsigned int m_maxCells
Definition: L1CaloMonitoringCaloTool.h:80
AthCommonDataStore
Definition: AthCommonDataStore.h:52
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
Trk::index1
@ index1
Definition: BoundarySurfaceFace.h:48
ParticleGun_FastCalo_ChargeFlip_Config.energy
energy
Definition: ParticleGun_FastCalo_ChargeFlip_Config.py:78
lumiFormat.i
int i
Definition: lumiFormat.py:85
LVL1::L1CaloMonitoringCaloTool::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Definition: L1CaloMonitoringCaloTool.h:66
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
Definition: AthCommonDataStore.h:145
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
LVL1::L1CaloMonitoringCaloTool::m_binOffset
std::vector< int > m_binOffset
Definition: L1CaloMonitoringCaloTool.h:87
LVL1::L1CaloMonitoringCaloTool::m_layerOffset
int m_layerOffset
Definition: L1CaloMonitoringCaloTool.h:86
CalibDbCompareRT.dummy
dummy
Definition: CalibDbCompareRT.py:59
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
LVL1::L1CaloMonitoringCaloTool::m_ttIdx
std::vector< int > m_ttIdx
Definition: L1CaloMonitoringCaloTool.h:79
MSG::name
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
Definition: MsgLevel.cxx:19
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
xAOD::eventNumber
eventNumber
Definition: EventInfo_v1.cxx:124
LVL1::L1CaloMonitoringCaloTool::s_maxTowers
static const int s_maxTowers
Definition: L1CaloMonitoringCaloTool.h:91
CaloDetDescrElement::is_lar_fcal
bool is_lar_fcal() const
cell belongs to FCAL
Definition: CaloDetDescrElement.cxx:137
LVL1::L1CaloMonitoringCaloTool::m_lastEvent
int m_lastEvent
Definition: L1CaloMonitoringCaloTool.h:84
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
CaloDetDescrElement::is_tile
bool is_tile() const
cell belongs to Tile
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:442
CaloLVL1_ID
Helper class for offline TT identifiers.
Definition: CaloLVL1_ID.h:66
Trk::index2
@ index2
Definition: BoundarySurfaceFace.h:49
LVL1::L1CaloMonitoringCaloTool::m_lastRun
int m_lastRun
Definition: L1CaloMonitoringCaloTool.h:83
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
debug
const bool debug
Definition: MakeUncertaintyPlots.cxx:53
plotBeamSpotVxVal.bin
int bin
Definition: plotBeamSpotVxVal.py:82
CaloLVL1_ID::eta
int eta(const Identifier id) const
return eta according to :
Definition: CaloLVL1_ID.h:653
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
CaloCellContainer
Container class for CaloCell.
Definition: CaloCellContainer.h:55
CaloLVL1_ID::pos_neg_z
int pos_neg_z(const Identifier id) const
return pos_neg_z according to :
Definition: CaloLVL1_ID.h:635
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
DeMoAtlasDataLoss.runNumber
string runNumber
Definition: DeMoAtlasDataLoss.py:64
DeMoScan.index
string index
Definition: DeMoScan.py:362
a
TList * a
Definition: liststreamerinfos.cxx:10
h
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
LVL1::L1CaloMonitoringCaloTool::m_sideOffset
int m_sideOffset
Definition: L1CaloMonitoringCaloTool.h:85
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
LVL1::L1CaloMonitoringCaloTool::m_caloCellContainerName
std::string m_caloCellContainerName
Definition: L1CaloMonitoringCaloTool.h:72
LVL1::L1CaloMonitoringCaloTool::region
int region(const int index) const
Definition: L1CaloMonitoringCaloTool.cxx:308
DEBUG
#define DEBUG
Definition: page_access.h:11
LVL1::L1CaloMonitoringCaloTool::m_quality
std::vector< float > m_quality
Definition: L1CaloMonitoringCaloTool.h:75
AthCommonMsg< AlgTool >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
LVL1::L1CaloMonitoringCaloTool::towerIndex
int towerIndex(const Identifier &ttId) const
Definition: L1CaloMonitoringCaloTool.cxx:292
CaloLVL1_ID::sampling
int sampling(const Identifier id) const
return sampling according to :
Definition: CaloLVL1_ID.h:641
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:629
TileCell::qual1
uint8_t qual1(void) const
get quality of first PMT (data member)
Definition: TileCell.h:197
extractSporadic.q
list q
Definition: extractSporadic.py:97
beamspotman.qual
qual
Definition: beamspotman.py:477
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:801
LVL1::L1CaloMonitoringCaloTool::m_energySums
std::vector< float > m_energySums
Definition: L1CaloMonitoringCaloTool.h:74
CaloDetDescrElement::sinTh
float sinTh() const
for algorithm working in transverse Energy
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:383
SG::DataProxy
Definition: DataProxy.h:45
LVL1::L1CaloMonitoringCaloTool::etaBin
int etaBin(const int index) const
Definition: L1CaloMonitoringCaloTool.cxx:325
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
fitman.k
k
Definition: fitman.py:528
Identifier
Definition: IdentifierFieldParser.cxx:14