|
ATLAS Offline Software
|
Go to the documentation of this file.
30 m_lcmodclus_key(
"LCOriginTopoClusters"),
31 m_emmodclus_key(
"EMOriginTopoClusters")
52 return StatusCode::SUCCESS;
58 return StatusCode::SUCCESS;
77 return StatusCode::FAILURE;
85 dec_softConst(*metCoreTrk) = std::vector<ElementLink<IParticleContainer> >();
86 dec_softConst(*metCoreTrk).reserve(uniquePFOs->
size());
87 dec_softConst(*metCoreCl) = std::vector<ElementLink<IParticleContainer> >();
88 dec_softConst(*metCoreCl).reserve(uniquePFOs->
size());
110 if (pfo->
e()>FLT_MIN) {
122 dec_softConst(*metCoreTrk) = std::vector<ElementLink<IParticleContainer> >();
123 dec_softConst(*metCoreTrk).reserve(uniquePFOs->
size());
124 dec_softConst(*metCoreCl) = std::vector<ElementLink<IParticleContainer> >();
125 dec_softConst(*metCoreCl).reserve(uniquePFOs->
size());
127 for(
const auto *
const sig : *uniquePFOs) {
128 const PFO *pfo =
static_cast<const PFO*
>(
sig);
136 *metCoreTrk += pfo->
track(0);
147 if (pfo->
e()>FLT_MIN) {
163 dec_softConst(*metCoreTrk) = std::vector<ElementLink<IParticleContainer> >();
164 dec_softConst(*metCoreTrk).reserve(uniqueTracks->
size());
165 dec_softConst(*metCoreCl) = std::vector<ElementLink<IParticleContainer> >();
166 dec_softConst(*metCoreCl).reserve(uniqueClusters->
size());
171 for(
const auto *
const cl : *uniqueClusters) {
172 if (
cl->e()>FLT_MIN) {
175 size_t cl_idx(
cl->index());
177 *metCoreCl += (*lctc)[cl_idx];
180 *metCoreEMCl += (*emtc)[cl_idx];
182 ATH_MSG_WARNING(
"Invalid LC/EM modified cluster collections -- cannot add cluster to soft term!");
188 *metCoreCl += (&stateClLC);
189 }
else *metCoreCl +=
cl;
194 *metCoreEMCl += (&stateClEM);
195 }
else *metCoreEMCl +=
cl;
201 for(
const auto *
const trk : *uniqueTracks) {
211 delete uniqueClusters;
214 return StatusCode::SUCCESS;
Base class to evaluate cluster kinematics with a different vertex / signal state.
const_pointer_type cptr()
Dereference the pointer.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
const TrackParticle * track(unsigned int index) const
Retrieve a const pointer to a Rec::TrackParticle.
static Types::bitmask_t track(Region reg=Region::FullAcceptance)
Bit mask for MET term from Track signal objects.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Helper class to provide constant type-safe access to aux data.
#define ATH_MSG_VERBOSE(x)
Class providing the definition of the 4-vector interface.
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
virtual double e() const
The total energy of the particle.
Description of a calorimeter cluster.
Helper class to provide type-safe access to aux data.
StatusCode initialize()
Dummy implementation of the initialisation function.
::StatusCode StatusCode
StatusCode definition for legacy code.
const IParticleContainer * getUniqueSignals(const IParticleContainer *signals, MissingETBase::UsageHandler::Policy p=MissingETBase::UsageHandler::TrackCluster) const
Extract a container of constituents that are not in jets.
Principal data object for Missing ET.
static Types::bitmask_t clusterLC(Region reg=Region::FullAcceptance)
Bit mask for MET term from LCTopo (locally calibrated calorimeter cell clusters) signal objects.
@ ParticleFlow
The object is a particle-flow object.
StatusCode executeTool(xAOD::MissingETContainer *metCont, xAOD::MissingETAssociationMap *metMap) const final
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Athena::TPCnvVers::Old Athena::TPCnvVers::Old MissingET
virtual bool isValid() override final
Can the handle be successfully dereferenced?
bool isCharged() const
is a charged PFO
DataVector< IParticle > IParticleContainer
const xAOD::IParticle * chargedObject(std::size_t i) const
Container for xAOD::MissingET_v1 objects.
@ AllCalo
Inclusive except tracks.
bool m_decorateSoftTermConst
virtual double e() const override
The total energy of the particle.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
Evaluate cluster kinematics with a different vertex / signal state.
#define ATH_MSG_WARNING(x)
METSoftAssociator()
Default constructor:
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_lcmodclus_key
static Types::bitmask_t clusterEM(Region reg=Region::FullAcceptance)
Bit mask for MET term from EMTopo signal objects.
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_emmodclus_key
Class describing a TrackParticle.
static Types::bitmask_t softEvent(Region reg=Region::FullAcceptance)
Standard MET term from reconstructed soft event.
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]
size_type size() const noexcept
Returns the number of elements in the collection.
A detector object made of other lower level object(s)