ATLAS Offline Software
Loading...
Searching...
No Matches
NSWL1Simulation.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGT1NSW_NSWL1SIMULATION_H
6#define TRIGT1NSW_NSWL1SIMULATION_H
7
8// Basic includes
10#include "GaudiKernel/ConcurrencyFlags.h"
11
12// NSWL1SimTools includes
16
17// namespace for the NSW LVL1 related classes
18namespace NSWL1 {
19
20
36
38
39 public:
40 NSWL1Simulation( const std::string& name, ISvcLocator* pSvcLocator );
41
42 virtual StatusCode initialize() override;
43 virtual StatusCode execute(const EventContext& ctx) const override;
44 virtual StatusCode finalize() override;
45 const ServiceHandle<ITHistSvc>& histSvc() const { return m_histSvc; }
46
47 protected:
48 SG::WriteHandleKey<Muon::NSW_TrigRawDataContainer> m_trigRdoContainer{this, "NSWTrigRDOContainerName", "L1_NSWTrigContainer", "Name of the NSW trigger RDO container"};
49
50 private:
51 ToolHandle <IPadEmulatorTool> m_pad_emulator{this, "PadEmulatorTool", "NSWL1::PadEmulatorTool", "Tool simulating the sTGC Pad Trigger"};
52 ToolHandle <IMMTriggerTool> m_mmtrigger{this, "MMTriggerTool", "NSWL1::MMTriggerTool", "Tool simulating the MM Trigger"};
53 ToolHandle <ITriggerProcessorTool> m_trigProcessor{this, "TriggerProcessorTool", "NSWL1::TriggerProcessorTool", "Tool simulating the TP"};
54
55 Gaudi::Property<bool> m_doNtuple{this, "DoNtuple", false, "Create an ntuple for data analysis"};
56 Gaudi::Property<bool> m_doMM{this, "DoMM", false, "Run data analysis for MM"};
57 Gaudi::Property<bool> m_doMMDiamonds{this, "DoMMDiamonds", false, "Run data analysis for MM using Diamond Roads algorithm"};
58 Gaudi::Property<bool> m_dosTGC{this, "DosTGC", false, "Run data analysis for sTGCs"};
59 Gaudi::Property<bool> m_doStrip{this, "DoStrip", false, "Run data analysis for sTGC strip trigger"};
60 Gaudi::Property<bool> m_doPad{this, "DoPad", false, "Run data analysis for sTGC pad trigger"};
61
62 // External services
64 mutable MuonVal::MuonTesterTree m_altree ATLAS_THREAD_SAFE {"SimulationTree", "/NSWL1Simulation"};
65 }; // end of NSWL1Simulation class
66} // namespace NSWL1
67#endif
An algorithm that can be simultaneously executed in multiple threads.
ToolHandle< IMMTriggerTool > m_mmtrigger
Gaudi::Property< bool > m_dosTGC
ServiceHandle< ITHistSvc > m_histSvc
ToolHandle< ITriggerProcessorTool > m_trigProcessor
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< IPadEmulatorTool > m_pad_emulator
SG::WriteHandleKey< Muon::NSW_TrigRawDataContainer > m_trigRdoContainer
Gaudi::Property< bool > m_doMMDiamonds
Gaudi::Property< bool > m_doPad
Gaudi::Property< bool > m_doMM
MuonVal::MuonTesterTree m_altree ATLAS_THREAD_SAFE
NSWL1Simulation(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode initialize() override
Gaudi::Property< bool > m_doStrip
virtual StatusCode finalize() override
Gaudi::Property< bool > m_doNtuple
const ServiceHandle< ITHistSvc > & histSvc() const
Property holding a SG store/key/clid from which a WriteHandle is made.
PadEmulatorCoincidences.