ATLAS Offline Software
Loading...
Searching...
No Matches
CaloTopoTowerContainer.h
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef CALOEVENT_CALOTOPOTOWERCONTAINER_H
8#define CALOEVENT_CALOTOPOTOWERCONTAINER_H
9/********************************************************************
10
11NAME: CaloTopoTowerContainer.h
12PACKAGE: offline/Calorimeter/CaloRec
13
14AUTHORS: Ian M. Nugent <inugent@triumf.ca>
15CREATED: March 15, 2010
16 Based on CaloTowerConatainer
17
18PURPOSE: container class for CaloTopoTower objects.
19 Baseclass: ObjectVector<CaloTower>.
20 The tower objects are stored as CaloTopoTower in ObjectVector
21 In addition to providing iterators over all towers,
22 the towers (and their et and energy) can be access with
23 index (ieta,iphi), or in real (eta,phi) space.
24
25
26UPDATE: March 15, 2010
27 add CLID
28
29********************************************************************/
30
31// INCLUDE HEADER FILES:
33
35
36#include "CaloEvent/CaloTower.h"
40#include "CaloEvent/CaloClusterContainer.h"
43#include "CaloEvent/CaloTowerContainer.h"
44#include "AthLinks/DataLink.h"
45
46#include <utility>
47#include <vector>
48#include <string>
49
51{
52public:
53
55 // Constructors/Destructor //
57
75 CaloTopoTowerContainer(const CaloTowerSeg& tseg, bool noTowers = false);
76
79
82
84 void swap (CaloTopoTowerContainer& other);
85
88
90 //TopoTower Info
96
97 // Selection criteria
98 double GetMinimumCellEnergy() const;
99 double GetMinimumClusterEnergy() const;
100 bool GetUseCellWeights() const;
101
102 // Noise stuff
103 float GetNoiseSigma() const;
104 float GetCellESignificanceThreshold() const;
105
106 // List of calorimeters from which to use cells
107 // ??? Redundant with regions in base class?
108 const std::vector<CaloCell_ID::SUBCALO>& GetCaloIndices() const;
109 bool GetCaloSelection() const;
110
111 void SetClusters(const CaloClusterContainer* c);
112 void SetTowers(const CaloTowerContainer* c);
113 void SetCells(const CaloCellContainer* c);
115
116 // Selection criteria
117 void SetMinimumCellEnergy(double c);
118 void SetMinimumClusterEnergy(double c);
119 void SetUseCellWeights(bool c);
120
121 // Noise stuff
122 void SetNoiseSigma(float c);
123 void SetCellESignificanceThreshold(float c);
124
125 // List of calorimeters from which to use cells
126 void SetCaloIndices(const std::vector<CaloCell_ID::SUBCALO>& c);
127 void SetCaloSelection(bool c);
128
129
130 private:
132
137
138 // Selection criteria
142
143 // Noise stuff
146
147 // List of calorimeters from which to use cells
148 std::vector<CaloCell_ID::SUBCALO> m_caloIndices;
150
151};
152CLASS_DEF( CaloTopoTowerContainer , 1140015421 , 1 )
154
155
157//TopoTower
167
168// Selection criteria
175
176// Noise stuff
178{return m_noiseSigma;}
181
182// List of calorimeters from which to use cells
183inline const std::vector<CaloCell_ID::SUBCALO>& CaloTopoTowerContainer::GetCaloIndices() const
184{ return m_caloIndices;}
187
188
193
194// Selection criteria
198
199// Noise stuff
202
203// List of calorimeters from which to use cells
204inline void CaloTopoTowerContainer::SetCaloIndices(const std::vector<CaloCell_ID::SUBCALO>& c){m_caloIndices=c;}
206
207
227#endif
#define SG_BASE(D, B)
Declare that class D derives from class B.
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
map of CaloCluster objects each CaloCell belongs to
Container class for CaloCell.
Storable container class for CaloTower.
DataLink< CaloClusterContainer > GetClusters() const
void swap(CaloTopoTowerContainer &other)
Swap.
float GetCellESignificanceThreshold() const
DataLink< CaloTowerContainer > GetTowers() const
void SetTowers(const CaloTowerContainer *c)
void SetCells(const CaloCellContainer *c)
DataLink< CaloTowerContainer > m_towers
CaloTopoTowerContainer & operator=(const CaloTopoTowerContainer &other)
Assignment.
void SetCellToClusterMap(const CaloCell2ClusterMap *c)
const CaloCell2ClusterMap * m_celltoclustermap
virtual ~CaloTopoTowerContainer()
Destructor.
DataLink< CaloCellContainer > GetCells() const
CaloTopoTowerContainer()
Default constructor.
const std::vector< CaloCell_ID::SUBCALO > & GetCaloIndices() const
void SetCaloIndices(const std::vector< CaloCell_ID::SUBCALO > &c)
std::vector< CaloCell_ID::SUBCALO > m_caloIndices
void SetClusters(const CaloClusterContainer *c)
const CaloCell2ClusterMap * GetCellToClusterMap() const
DataLink< CaloClusterContainer > m_clusters
void SetCellESignificanceThreshold(float c)
DataLink< CaloCellContainer > m_cells
Storable container class for CaloTower.
CaloTowerContainer()
Default constructor.
Data object stores CaloTower segmentation.