ATLAS Offline Software
Loading...
Searching...
No Matches
CaloCornerRingsBuilder.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#ifndef CALORINGERTOOLS_CALOCORNERRINGSBUILDER_H
6#define CALORINGERTOOLS_CALOCORNERRINGSBUILDER_H
7
8// Base includes:
10#include "CaloRingsBuilder.h"
11
12namespace Ringer
13{
14
16 {
17
18 public:
21
24 CaloCornerRingsBuilder(const std::string &type,
25 const std::string &name,
26 const IInterface *parent);
27
33
36 virtual StatusCode execute(const xAOD::CaloCluster &cluster,
38
42 virtual StatusCode execute(const xAOD::IParticle &particle,
45 protected:
47 //
50
53 **/
54 virtual StatusCode buildRingSet(
56 const AtlasGeoPoint &seed,
58 const unsigned int offset,
59 const unsigned int nSubRings);
61
65 StatusCode getCornerRingsSeeds(
67 const AtlasGeoPoint &centralSeed,
68 std::vector<AtlasGeoPoint> &cornerSeeds);
72 Gaudi::Property<int> m_cornerShift{
73 this,
74 "CornerShift",
75 3,
76 "Number of cells to shift for corner seeds (top-left, etc)"};
77
78 private:
81
84 template <typename T>
85 StatusCode executeTemp(
86 const T &input,
89 };
90
91} // namespace Ringer
92
93#endif
static Double_t rs
StatusCode getCornerRingsSeeds(const xAOD::RingSetConf::RawConf &rawConf, const AtlasGeoPoint &centralSeed, std::vector< AtlasGeoPoint > &cornerSeeds)
Get the seeds for the corner rings (top-left, etc).
Gaudi::Property< int > m_cornerShift
Number of cells to shift for corner seeds (top-left, etc).
virtual StatusCode execute(const xAOD::CaloCluster &cluster, ElementLink< xAOD::CaloRingsContainer > &clRings) override
Tool main methods:
virtual StatusCode buildRingSet(const xAOD::RingSetConf::RawConf &rawConf, const AtlasGeoPoint &seed, xAOD::RingSet *rs, const unsigned int offset, const unsigned int nSubRings)
CaloCornerRingsBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
StatusCode executeTemp(const T &input, ElementLink< xAOD::CaloRingsContainer > &crEL)
Tool private methods:
virtual StatusCode buildRingSet(const xAOD::RingSetConf::RawConf &rawConf, const AtlasGeoPoint &seed, xAOD::RingSet *rs)
Tool protected methods:
CaloRingsBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
const xAOD::RingSetConf::RawConfCollection & rawConf() override
Extra methods:
Class providing the definition of the 4-vector interface.
Namespace dedicated for Ringer utilities.
RingSet_v1 RingSet
Definition of the current "RingSet version".
Definition RingSet.h:15
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.