ATLAS Offline Software
ITrigEgammaForwardFastCaloHypoTool.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 ITrigEgammaForwardFastCaloHypoTool_h
5 #define ITrigEgammaForwardFastCaloHypoTool_h
6 
7 #include "GaudiKernel/IAlgTool.h"
12 #include <map>
13 
14 
15 
16 
22 class ITrigEgammaForwardFastCaloHypoTool: virtual public ::IAlgTool
23 {
24  public:
25 
28  struct FastClusterInfo {
29 
31  const TrigRoiDescriptor* r,
32  const xAOD::TrigEMCluster* c,
33  const xAOD::TrigRingerRings* ring,
34  const TrigCompositeUtils::Decision* previousDecision )
35  : decision( d ),
36  roi( r ),
37  cluster(c),
38  ringerShape(ring),
40  TrigCompositeUtils::decisionIDs( previousDecision ).end() )
41  {}
42 
48  std::map<std::string, float> valueDecorator;
49  std::map<std::string, bool> pidDecorator;
50  };
51 
52 
59  virtual StatusCode decide( std::vector<FastClusterInfo>& input ) const = 0;
60 
65  virtual bool decide( const FastClusterInfo& i ) const = 0;
66 
67 
68 };
69 
70 
71 #endif //> !TRIGEGAMMAHYPO_ITrigEgammaForwardFastCaloHypoTool_H
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::pidDecorator
std::map< std::string, bool > pidDecorator
Definition: ITrigEgammaForwardFastCaloHypoTool.h:49
beamspotman.r
def r
Definition: beamspotman.py:676
ITrigEgammaForwardFastCaloHypoTool::decide
virtual StatusCode decide(std::vector< FastClusterInfo > &input) const =0
decides upon all clusters Note it is for a reason a non-virtual method, it is an interface in gaudi s...
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::FastClusterInfo
FastClusterInfo(TrigCompositeUtils::Decision *d, const TrigRoiDescriptor *r, const xAOD::TrigEMCluster *c, const xAOD::TrigRingerRings *ring, const TrigCompositeUtils::Decision *previousDecision)
Definition: ITrigEgammaForwardFastCaloHypoTool.h:30
hist_file_dump.d
d
Definition: hist_file_dump.py:137
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::cluster
const xAOD::TrigEMCluster * cluster
Definition: ITrigEgammaForwardFastCaloHypoTool.h:45
TrigCompositeUtils.h
TrigRoiDescriptor
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
Definition: TrigRoiDescriptor.h:56
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::decision
TrigCompositeUtils::Decision * decision
Definition: ITrigEgammaForwardFastCaloHypoTool.h:43
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo
Definition: ITrigEgammaForwardFastCaloHypoTool.h:28
TrigRingerRings.h
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::previousDecisionIDs
const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs
Definition: ITrigEgammaForwardFastCaloHypoTool.h:47
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::roi
const TrigRoiDescriptor * roi
Definition: ITrigEgammaForwardFastCaloHypoTool.h:44
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
lumiFormat.i
int i
Definition: lumiFormat.py:92
ITrigEgammaForwardFastCaloHypoTool::DeclareInterfaceID
DeclareInterfaceID(ITrigEgammaForwardFastCaloHypoTool, 1, 0)
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
ITrigEgammaForwardFastCaloHypoTool::decide
virtual bool decide(const FastClusterInfo &i) const =0
Makes a decision for a single object The decision needs to be returned.
xAOD::TrigRingerRings_v2
Definition: TrigRingerRings_v2.h:24
TrigCompositeUtils::DecisionIDContainer
std::set< DecisionID > DecisionIDContainer
Definition: TrigComposite_v1.h:28
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
xAOD::TrigEMCluster_v1
Description of a trigger EM cluster.
Definition: TrigEMCluster_v1.h:28
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::ringerShape
const xAOD::TrigRingerRings * ringerShape
Definition: ITrigEgammaForwardFastCaloHypoTool.h:46
ITrigEgammaForwardFastCaloHypoTool::FastClusterInfo::valueDecorator
std::map< std::string, float > valueDecorator
Definition: ITrigEgammaForwardFastCaloHypoTool.h:48
python.compressB64.c
def c
Definition: compressB64.py:93
TrigRoiDescriptorCollection.h
HLTIdentifier.h
ITrigEgammaForwardFastCaloHypoTool
Definition: ITrigEgammaForwardFastCaloHypoTool.h:23
ITrigEgammaForwardFastCaloHypoTool::~ITrigEgammaForwardFastCaloHypoTool
virtual ~ITrigEgammaForwardFastCaloHypoTool()
Definition: ITrigEgammaForwardFastCaloHypoTool.h:27