ATLAS Offline Software
Loading...
Searching...
No Matches
CaloTopoSplitterClusterCell.h
Go to the documentation of this file.
1// Yo emacs, this is -*- C++ -*-
2
3/*
4 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5*/
6
7//-----------------------------------------------------------------------
8// File and Version Information:
9//
10// Description: ClusterCell Container for the topological cluster splitter
11//
12// Environment:
13// Software developed for the ATLAS Detector at the CERN LHC
14//
15// Author List:
16// Sven Menke
17//
18//-----------------------------------------------------------------------
19
20#ifndef CALOTOPOSPLITTERCLUSTERCELL_H
21#define CALOTOPOSPLITTERCLUSTERCELL_H
22
25
27
29{
30
31private:
32
33 // Friends
34
35 // Data members
36
43 float m_weight;
45
46public:
47
48 // Constructors
49
51 const CaloCell_ID::SUBCALO subDet,
53 const size_t & iCell, //This is actually obsolete, can be obtained from iterator
54 const float & signedRatio,
55 const xAOD::CaloCluster *pClus,
56 const size_t caloClusterIndex,
57 const bool isSecondary=false)
58 : CaloTopoTmpClusterCellBase(idHash,subDet,iCell,signedRatio),
59 m_cluster(0),
60 m_parentCluster(pClus),
61 m_itrCell(itrCell),
62 m_parentClusterIndex(caloClusterIndex),
63 m_secondary(isSecondary)
64 {
65 m_shared = false;
67 m_weight=1.;
68 }
69
70 inline const xAOD::CaloCluster * getParentCluster() const
71 {
72 return m_parentCluster;
73 }
74
76 {
77 return m_itrCell;
78 }
79
80 inline size_t getParentClusterIndex() const
81 {
83 }
84
85 inline bool getShared() const
86 {
87 return m_shared;
88 }
89
90 inline void
95
100
101 inline void setShared()
102 {
103 m_shared = true;
104 }
105
106 inline void setSharedWeight(const float &weight)
107 {
108 m_weight = weight;
109 }
110
111 inline const float & getSharedWeight()
112 {
113 return m_weight;
114 }
115
116 inline void setUnshared()
117 {
118 m_shared = false;
119 }
120
122 {
123 return m_cluster;
124 }
125
130
132 {
133 m_cluster = cluster;
134 }
135
136 inline bool getSecondary() const
137 {
138 return m_secondary;
139 }
140
141
142
143};
144
145#endif // CALOTOPOSPLITTERCLUSTERCELL_H
146
CaloCell_Base_ID::SUBCALO SUBCALO
Definition CaloCell_ID.h:50
const CaloTopoSplitterHashCluster * getCaloTopoTmpHashCluster() const
CaloTopoSplitterHashCluster * m_cluster
CaloTopoSplitterHashCluster * m_secondCluster
CaloTopoSplitterClusterCell(const IdentifierHash &idHash, const CaloCell_ID::SUBCALO subDet, xAOD::CaloCluster::cell_iterator &itrCell, const size_t &iCell, const float &signedRatio, const xAOD::CaloCluster *pClus, const size_t caloClusterIndex, const bool isSecondary=false)
CaloTopoSplitterHashCluster * getSecondCaloTopoTmpHashCluster()
const xAOD::CaloCluster * getParentCluster() const
const xAOD::CaloCluster::cell_iterator & getCellIterator() const
xAOD::CaloCluster::cell_iterator m_itrCell
const xAOD::CaloCluster * m_parentCluster
void setSecondCaloTopoTmpHashCluster(CaloTopoSplitterHashCluster *cluster)
CaloTopoSplitterHashCluster * getCaloTopoTmpHashCluster()
void setSharedWeight(const float &weight)
void setCaloTopoTmpHashCluster(CaloTopoSplitterHashCluster *cluster)
CaloTopoTmpClusterCellBase(const IdentifierHash &idHash, const CaloCell_ID::SUBCALO subDet, const size_t &iCell, const float &signedRatio)
This is a "hash" representation of an Identifier.
CaloClusterCellLink::iterator cell_iterator
Iterator of the underlying CaloClusterCellLink (non-const version)
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.