|
ATLAS Offline Software
|
#include <TrackCaloClusterTool.h>
|
| UFOTool (const std::string &, const std::string &, const IInterface *) |
|
virtual StatusCode | initialize () override |
|
virtual StatusCode | fillTCC (xAOD::FlowElementContainer *container, const TrackCaloClusterInfo &tccInfo) const override |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
SG::ReadHandleKey< xAOD::FlowElementContainer > | m_inputPFOHandle {this, "InputPFO", "CHSParticleFlowObjects", ""} |
|
Gaudi::Property< std::string > | m_orig_pfo {this, "OriginPFO", "originalObjectLink", "Key to access original un-modified pfo"} |
|
Gaudi::Property< float > | m_clusterEcut {this , "ClusterECut", 0, " Impotant !! : must be the same value as in TrackCaloClusterInfoUFOAlg"} |
| cluster with E below this cut won't be considered in the TCC alg. WARNING cut must be configured as in TrackCaloClusterInfoUFOAlg More...
|
|
ToolHandle< CP::ITrackVertexAssociationTool > | m_trackVertexAssoTool {this ,"TrackVertexAssoTool", ""} |
| The tool used to make sure a track is associated to PV0. More...
|
|
Gaudi::Property< bool > | m_useEnergy {this, "UseEnergy", false, "if false will use pT for weights evaluation"} |
| use cluster energy or pt? More...
|
|
SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > | m_assoClustersKey {this, "AssoClustersDecor", "TCCAssoClusters", "Key to access clusters associated to a track. IMPORTANT must be constistent with the TrackParticleContainer the parent alg will operate on"} |
|
SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > | m_caloEntryParsDecor {this, "CaloEntryParsDecorKey" , "","IMPORTANT must be constistent with the TrackParticleContainer the parent alg will operate on, REQUIRED if SaveDetectorEta or DoOriginCorrection, else leave blank so the scheduler won't require it unnecessarily."} |
|
Gaudi::Property< bool > | m_saveDetectorEta {this, "SaveDetectorEta", false, ""} |
| flag to add dectetor eta decoration onto the produced TrackCaloClusters More...
|
|
Implements the creation of UFO objects. These are build similarly as TCC but using PFO in the place of CaloClusters. All Combined, Charged and Neutral are build together within this class.
Definition at line 126 of file TrackCaloClusterTool.h.
◆ StoreGateSvc_t
◆ UFOTool()
UFOTool::UFOTool |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ fillTCC()
Implements TrackCaloClusterBaseTool.
Definition at line 359 of file TrackCaloClusterTool.cxx.
362 const EventContext& ctx=Gaudi::Hive::currentContext();
387 if(pfo->pt() <= 0)
continue;
394 if(pfo->isCharged()) {
397 if(!PVMatchedAcc(*pfo))
continue;
401 const std::vector< ElementLink<xAOD::FlowElementContainer> > PFOLink {pfoLink};
403 tccContainer->push_back(tcc);
405 if(pfo->isCharged()) {
416 return StatusCode::SUCCESS;
◆ initialize()
StatusCode UFOTool::initialize |
( |
| ) |
|
|
overridevirtual |
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
const InterfaceID & ITrackCaloClusterTool::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_assoClustersKey
SG::ReadDecorHandleKey<xAOD::TrackParticleContainer> TrackCaloClusterBaseTool::m_assoClustersKey {this, "AssoClustersDecor", "TCCAssoClusters", "Key to access clusters associated to a track. IMPORTANT must be constistent with the TrackParticleContainer the parent alg will operate on"} |
|
protectedinherited |
◆ m_caloEntryParsDecor
SG::ReadDecorHandleKey<xAOD::TrackParticleContainer> TrackCaloClusterBaseTool::m_caloEntryParsDecor {this, "CaloEntryParsDecorKey" , "","IMPORTANT must be constistent with the TrackParticleContainer the parent alg will operate on, REQUIRED if SaveDetectorEta or DoOriginCorrection, else leave blank so the scheduler won't require it unnecessarily."} |
|
protectedinherited |
◆ m_clusterEcut
Gaudi::Property<float> UFOTool::m_clusterEcut {this , "ClusterECut", 0, " Impotant !! : must be the same value as in TrackCaloClusterInfoUFOAlg"} |
|
protected |
◆ m_detStore
◆ m_evtStore
◆ m_inputPFOHandle
◆ m_orig_pfo
Gaudi::Property<std::string> UFOTool::m_orig_pfo {this, "OriginPFO", "originalObjectLink", "Key to access original un-modified pfo"} |
|
protected |
◆ m_saveDetectorEta
Gaudi::Property<bool> TrackCaloClusterBaseTool::m_saveDetectorEta {this, "SaveDetectorEta", false, ""} |
|
protectedinherited |
flag to add dectetor eta decoration onto the produced TrackCaloClusters
Definition at line 59 of file TrackCaloClusterTool.h.
◆ m_trackVertexAssoTool
◆ m_useEnergy
Gaudi::Property<bool> TrackCaloClusterBaseTool::m_useEnergy {this, "UseEnergy", false, "if false will use pT for weights evaluation"} |
|
protectedinherited |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
Helper class to provide type-safe access to aux data.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::string decorKeyFromKey(const std::string &key)
Extract the decoration part of key.
xAOD::FlowElementContainer * m_tccContainer
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
const xAOD::TrackParticleContainer * allTracks
const TrackCaloClusterInfo * m_tccInfo
Class providing the definition of the 4-vector interface.
const xAOD::FlowElementContainer * m_pfoContainer
virtual void setOwner(IDataHandleHolder *o)=0
const CP::ITrackVertexAssociationTool * m_trackVertexAssoTool
Handle class for reading a decoration on an object.
void setParameters(T *h, TGraphAsymmErrors *tg)
FlowElement_v1 FlowElement
Definition of the current "pfo version".
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
size_t index() const
Return the index of this element within its container.
virtual void combinedUFOLoop(const TrackCaloClusterInfo *tccInfo, const xAOD::FlowElementContainer *pfos)
std::string m_clustersLinkK
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
ElementLink implementation for ROOT usage.
std::map< const xAOD::IParticle *, FourMom_t > clusterToTracksWeightMap
Implement a concrete CombinedUFOLoop dedicated to building UFO see TCCHelpers.h in TrackCaloClusterRe...
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Class describing a TrackParticle.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
const SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > * m_linkdecorkey
A detector object made of other lower level object(s)