31 "Prefix to add to aux data items.");
33 "Photon truth analysis tool instance.");
35 "Getter instance for the input photon objects.");
37 "If true, don't complain if input objects are missing.");
46 CHECK( AthAlgorithm::initialize() );
50 return StatusCode::SUCCESS;
59#define DECOR(TYPE,N) xAOD::Photon::Decorator<TYPE> N (m_auxPrefix + #N)
60 DECOR(
bool, truth_isConv);
61 DECOR(
float, truth_Rconv);
62 DECOR(
float, truth_zconv);
63 DECOR(
bool, truth_isPhotonFromHardProc);
64 DECOR(
bool, truth_isFromHardProc);
65 DECOR(
bool, truth_isBrem);
78 truth_isPhotonFromHardProc(*g) =
m_truthTool->isPromptPhotonMC(p);
79 truth_isFromHardProc(*g) =
m_truthTool->isPromptParticleMC(p);
81 truth_isBrem(*g) = !truth_isPhotonFromHardProc(*g) &&
m_truthTool->isQuarkBremMC(p) ;
86 return StatusCode::SUCCESS;
Helpers for checking error return status codes and reporting errors.
#define CHECK(...)
Evaluate an expression and check for errors.
Analyze GenParticle's matching photons and make UD decorations.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
virtual StatusCode execute()
Standard Gaudi execute method.
ToolHandle< ICollectionGetterTool > m_photonGetter
Property: Getter for input photon objects.
bool m_allowMissing
Property: If true, don't complain if input objects are missing.
PhotonTruthAlg(const std::string &name, ISvcLocator *svcloc)
Standard Gaudi algorithm constructor.
ToolHandle< PhotonTruthTool > m_truthTool
Property: Truth analysis tool.
virtual StatusCode initialize()
Standard Gaudi initialize method.
std::string m_auxPrefix
Property: Prefix to add to aux data items.
Block filler tool for noisy FEB information.
TruthParticle_v1 TruthParticle
Typedef to implementation.
Photon_v1 Photon
Definition of the current "egamma version".