ATLAS Offline Software
TrigVSIHypoAlg.h
Go to the documentation of this file.
1 /*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGVSIHYPOALG_H
5 #define TRIGVSIHYPOALG_H
6 
7 // Framework includes
8 #include "TrigVSIHypoTool.h"
9 
15 #include "Gaudi/Property.h"
16 #include "AthViews/View.h"
17 #include <map>
18 
19 // STL includes
20 #include <string>
21 class TrigVSIHypoAlg : public ::HypoBase {
22  public:
23  TrigVSIHypoAlg(const std::string& name, ISvcLocator* pSvcLocator);
24 
25  virtual ~TrigVSIHypoAlg() = default;
26  virtual StatusCode initialize() override;
27  virtual StatusCode execute(const EventContext& context) const override;
28 
29  private:
31  ToolHandleArray<TrigVSIHypoTool> m_hypoTools {this, "HypoTools", {},"Tools that perform actual selection"};
32  SG::ReadHandleKey<xAOD::VertexContainer> m_verticesKey {this, "verticesKey", "Undefined",""};
33  SG::WriteHandleKey<xAOD::TrigCompositeContainer> m_vtxCountKey {this, "vtxCountKey", "Undefined",""};
34  Gaudi::Property<bool> m_isViewBased {this, "isViewBased", true, "Flag to toggle the hypo to run in a view or in whole-event level"};
35  Gaudi::Property<float> m_minPt {this, "minPt", 1000., "Preselection. Accept vertices with momentum higher than this limit"};
36  Gaudi::Property<float> m_minR {this, "minR" , 20., "Preselection. Accept vertices with decay position R higher this limit"};
37  Gaudi::Property<float> m_requiredNTrks {this, "requiredNTrks", 2, "Preselection. Accept vertices with tracks more than this limit"};
38  ToolHandle<GenericMonitoringTool> m_monTool{this,"MonTool","","Monitoring tool"};
39 };
40 #endif
TrigVSIHypoAlg::m_verticesKey
SG::ReadHandleKey< xAOD::VertexContainer > m_verticesKey
Definition: TrigVSIHypoAlg.h:32
TrigCompositeUtils.h
TrigVSIHypoAlg::m_minR
Gaudi::Property< float > m_minR
Definition: TrigVSIHypoAlg.h:36
TrigVSIHypoAlg::execute
virtual StatusCode execute(const EventContext &context) const override
Definition: TrigVSIHypoAlg.cxx:49
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
TrigVSIHypoAlg::m_minPt
Gaudi::Property< float > m_minPt
Definition: TrigVSIHypoAlg.h:35
TrigVSIHypoAlg::initialize
virtual StatusCode initialize() override
Definition: TrigVSIHypoAlg.cxx:31
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigVSIHypoAlg::m_requiredNTrks
Gaudi::Property< float > m_requiredNTrks
Definition: TrigVSIHypoAlg.h:37
TrigVSIHypoTool.h
TrigVSIHypoAlg
Definition: TrigVSIHypoAlg.h:21
TrigVSIHypoAlg::m_vtxCountKey
SG::WriteHandleKey< xAOD::TrigCompositeContainer > m_vtxCountKey
Definition: TrigVSIHypoAlg.h:33
TrigVSIHypoAlg::m_hypoTools
ToolHandleArray< TrigVSIHypoTool > m_hypoTools
Definition: TrigVSIHypoAlg.h:31
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
TrigCompositeContainer.h
TrigVSIHypoAlg::m_isViewBased
Gaudi::Property< bool > m_isViewBased
Definition: TrigVSIHypoAlg.h:34
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
HypoBase
Hypothesis algorithms take the output of reco algorithms and the decision from the preceeding InputMa...
Definition: HypoBase.h:13
TrigVSIHypoAlg::TrigVSIHypoAlg
TrigVSIHypoAlg()
TrigVSIHypoAlg::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: TrigVSIHypoAlg.h:38
VertexContainer.h
HypoBase.h
View.h
TrigVSIHypoAlg::~TrigVSIHypoAlg
virtual ~TrigVSIHypoAlg()=default