7#include "CaloEvent/CaloCluster.h"
8#include "CaloEvent/CaloClusterContainer.h"
29 std::vector<double>
vals;
31 vals.resize (CaloSampling::Unknown, -999);
33 for (
unsigned iSamp=0;iSamp<CaloSampling::Unknown;++iSamp) {
37 ((*xaod).*setter) (sNew, vals[iSamp]);
48 const std::string& name,
49 const IInterface* parent )
53 declareInterface< ICaloClusterCnvTool >(
this );
76 if( ccc && ( !ccc->
empty() ) ) {
80 for( ; cit != cit_e; ++cit ) {
94 ATH_MSG_DEBUG(
"Found cluster with empty list of constituents" );
127 copyClusterVariables (aod, xaod,
130 copyClusterVariables (aod, xaod,
133 copyClusterVariables (aod, xaod,
141 const std::vector< CaloClusterBadChannelData >* bcvec =
144 badChanList.emplace_back( bcd.getEta(), bcd.getPhi(),
145 bcd.getLayer(), bcd.getFlag().packedData() );
154 for( ; mom_itr != mom_end; ++mom_itr ) {
169 return StatusCode::SUCCESS;
180 for( ; it!= itE; ++it){
186 return StatusCode::SUCCESS;
#define ATH_MSG_VERBOSE(x)
#define CHECK(...)
Evaluate an expression and check for errors.
Container class for CaloCell.
Container class for CaloCellLink.
Bookkeeping of cells that make up a cluster Simplified replacement for CaloCellLink,...
Storable container for CaloCluster.
const double & getValue() const
returns the value of this moment
virtual object_iter end() const
end iterator for public object access
const CaloCellContainer * getContainer(const CaloCell *pCell) const
public container access: retrieve Container for given object pointer
virtual object_iter begin() const
begin iterator for public object access
virtual bool isCellLinkValid() const
moment_type getMomentType() const
Function access to moment type.
const CaloClusterMoment & getMoment() const
Function access to CaloClusterMoment.
Principal data class for CaloCell clusters.
double eta0() const
Returns raw of cluster seed.
MomentStoreIter moment_iterator
Moment iterator type for CaloCluster clients.
virtual double m() const
Retrieve mass independent of signal state.
virtual double e() const
Retrieve energy independent of signal state.
CaloCompositeCellBase< CaloClusterNavigable >::cell_iterator cell_iterator
Iterator on CaloCell s.
virtual double eta() const
Retrieve eta independent of signal state.
CaloVariableType::VariableType variable_type
Data type indicator.
double getTime() const
Access cluster time.
moment_iterator beginMoment(bool useLink=true) const
First iterator on moment store.
moment_iterator endMoment(bool useLink=true) const
Last iterator on moment store.
double getVariable(const variable_type &varType, const sampling_type &samType, bool useLink=true) const
General sampling variable access.
unsigned int samplingPattern() const
Get sampling bitmask.
const badChannelList * getBadChannel() const
unsigned int getClusterSize() const
Get cluster size.
bool hasSampling(const sampling_type &theSampling) const
Checks if certain sampling contributes to cluster.
virtual double phi() const
Retrieve phi independent of signal state.
moment_store::moment_type moment_type
Cluster moment indicator type.
double phi0() const
Returns raw of cluster seed.
DataModel_detail::const_iterator< DataVector > const_iterator
value_type push_back(value_type pElem)
Add an element to the end of the collection.
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
bool empty() const noexcept
Returns true if the collection is empty.
index_type index() const
Get the index of the element inside of its container.
const ElementLink< CONT > & getElement() const
RPAR getParameter() const
void setRawEta(flt_t)
Set for signal state UNCALIBRATED.
void setAltPhi(flt_t)
Set for signal state ALTCALIBRATED.
void setRawPhi(flt_t)
Set for signal state UNCALIBRATED.
bool setPhi(const CaloSample sampling, const float phi)
Set in a given sampling. Returns false if the sample isn't part of the cluster.
void setAltM(flt_t)
Set mass for singal state ALTCALIBRATED.
void addCellLink(CaloClusterCellLink *CCCL)
void setRawE(flt_t)
Set Energy for signal state UNCALIBRATED.
void setCalPhi(flt_t)
Set for signal state CALIBRATED.
void setRawM(flt_t)
Set mass for singal state UNCALIBRATED.
void setAltEta(flt_t)
Set for signal state ALTCALIBRATED.
void setTime(flt_t)
Set cluster time.
void insertMoment(MomentType type, double value)
void setCalEta(flt_t)
Set for signal state CALIBRATED.
void setClusterSize(const ClusterSize)
Get cluster size.
bool setEta(const CaloSample sampling, const float eta)
Set in a given sampling. Returns false if the sample isn't part of the cluster.
ClusterSize
Enumeration to identify different cluster sizes.
bool setEnergy(const CaloSample sampling, const float e)
Set energy for a given sampling. Returns false if the sample isn't part of the cluster.
void setSamplingPattern(const unsigned sp, const bool clearSamplingVars=false)
Set sampling pattern (one bit per sampling.
void setPhi0(flt_t)
Set raw of cluster seed.
void setAltE(flt_t)
Set Energy for signal state ALTCALIBRATED.
MomentType
Enums to identify different moments.
void setCalE(flt_t)
Set Energy for signal state CALIBRATED.
void setCalM(flt_t)
Set mass for singal state CALIBRATED.
bool setLink(CaloClusterCellLinkContainer *CCCL, IProxyDict *sg=nullptr)
Set up an ElementLink to a CaloClusterCellLink object.
CaloSampling::CaloSample CaloSample
bool addCell(const unsigned index, const double weight)
Method to add a cell to the cluster (Beware: Kinematics not updated!)
void setBadChannelList(const CaloClusterBadChannelList &bcl)
std::vector< CaloClusterBadChannelData > CaloClusterBadChannelList
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
setBGCode setTAP setLVL2ErrorBits bool
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.