ATLAS Offline Software
ITrigEgammaPrecisionPhotonHypoTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGEGAMMAHYPO_ITRIGPRECISIONPHOTONHYPOTOOL_H
5 #define TRIGEGAMMAHYPO_ITRIGPRECISIONPHOTONHYPOTOOL_H 1
6 
7 #include "GaudiKernel/IAlgTool.h"
10 #include "xAODEgamma/Photon.h"
11 
18  : virtual public ::IAlgTool
19 {
20 
21  public:
24 
25  struct PhotonInfo {
27  const TrigCompositeUtils::Decision* previousDecision )
28  : decision( d ),
29  roi( r ),
30  photon(c),
32  TrigCompositeUtils::decisionIDs( previousDecision ).end() )
33  {}
34 
38  std::map<std::string, float> valueDecorator;
39  std::map<std::string, bool> pidDecorator;
41  };
42 
43 
50  virtual StatusCode decide( std::vector<PhotonInfo>& input ) const = 0;
51 
56  virtual bool decide( const PhotonInfo& i ) const = 0;
57 
58 
59 
60 };
61 
62 
63 #endif //> !TRIGEGAMMAHYPO_ITRIGPRECISIONPHOTONHYPOTOOL_H
beamspotman.r
def r
Definition: beamspotman.py:676
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::valueDecorator
std::map< std::string, float > valueDecorator
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:38
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::previousDecisionIDs
const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:40
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::decision
TrigCompositeUtils::Decision * decision
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:35
TrigCompositeUtils.h
hist_file_dump.d
d
Definition: hist_file_dump.py:137
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::PhotonInfo
PhotonInfo(TrigCompositeUtils::Decision *d, const TrigRoiDescriptor *r, const xAOD::Photon_v1 *c, const TrigCompositeUtils::Decision *previousDecision)
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:26
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
ITrigEgammaPrecisionPhotonHypoTool::decide
virtual StatusCode decide(std::vector< PhotonInfo > &input) const =0
decides upon all photons Note it is for a reason a non-virtual method, it is an interface in gaudi se...
TrigRoiDescriptor
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
Definition: TrigRoiDescriptor.h:56
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::photon
const xAOD::Photon_v1 * photon
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:37
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::roi
const TrigRoiDescriptor * roi
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:36
ITrigEgammaPrecisionPhotonHypoTool::~ITrigEgammaPrecisionPhotonHypoTool
virtual ~ITrigEgammaPrecisionPhotonHypoTool()
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:23
lumiFormat.i
int i
Definition: lumiFormat.py:92
Photon.h
ITrigEgammaPrecisionPhotonHypoTool::decide
virtual bool decide(const PhotonInfo &i) const =0
Makes a decision for a single object The decision needs to be returned.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
xAOD::TrigComposite_v1
Class used to describe composite objects in the HLT.
Definition: TrigComposite_v1.h:52
ITrigEgammaPrecisionPhotonHypoTool
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:19
TrigCompositeUtils::DecisionIDContainer
std::set< DecisionID > DecisionIDContainer
Definition: TrigComposite_v1.h:28
xAOD::Photon_v1
Definition: Photon_v1.h:37
ITrigEgammaPrecisionPhotonHypoTool::DeclareInterfaceID
DeclareInterfaceID(ITrigEgammaPrecisionPhotonHypoTool, 1, 0)
TrigCompositeUtils::decisionIDs
void decisionIDs(const Decision *d, DecisionIDContainer &destination)
Extracts DecisionIDs stored in the Decision object.
Definition: TrigCompositeUtilsRoot.cxx:67
TrigCompositeUtils
Definition: Event/xAOD/xAODTrigger/xAODTrigger/TrigComposite.h:19
TrigRoiDescriptor.h
python.compressB64.c
def c
Definition: compressB64.py:93
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo::pidDecorator
std::map< std::string, bool > pidDecorator
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:39
ITrigEgammaPrecisionPhotonHypoTool::PhotonInfo
Definition: ITrigEgammaPrecisionPhotonHypoTool.h:25