ATLAS Offline Software
FatrasSimTool.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef ISF_FATRASSIMTOOL_h
8 #define ISF_FATRASSIMTOOL_h
9 
10 //Gaudi
11 #include "GaudiKernel/ServiceHandle.h"
12 #include "GaudiKernel/ToolHandle.h" // for ToolHandleArray
14 
15 // ISF
19 
20 namespace ISF {
21 
22  class ATLAS_NOT_THREAD_SAFE FatrasSimTool : public BaseSimulatorTool { // deprecated: ATLASSIM-6020
23  public:
24  FatrasSimTool( const std::string& type, const std::string& name, const IInterface* parent);
25 
26  ~FatrasSimTool();
27 
28  virtual StatusCode initialize() override;
29 
30  virtual StatusCode simulate( const EventContext& ctx, ISFParticle& isp, ISFParticleContainer&, McEventCollection* ) override;
31 
32  virtual StatusCode setupEvent(const EventContext&) override { return StatusCode::SUCCESS; };
33 
34  virtual StatusCode releaseEvent(const EventContext&) override { return StatusCode::SUCCESS; };
35 
36  virtual ISF::SimulationFlavor simFlavor() const override { return ISF::Fatras; };
37 
38  private:
39 
41  PublicToolHandle<ISF::IParticleProcessor> m_IDsimulationTool{this, "IDSimulationTool", "", ""};
42  bool m_useExtrapolator{true};
43  PublicToolHandle<ISF::IParticleProcessor> m_simulationTool{this, "SimulationTool", "", ""};
44  PublicToolHandle<ISF::IParticleFilter> m_particleFilter{this, "ParticleFilter", "", ""};
45 
46  };
47 
48 }
49 
50 #endif
ISF::ISFParticleContainer
std::list< ISF::ISFParticle * > ISFParticleContainer
generic ISFParticle container (not necessarily a std::list!)
Definition: ISFParticleContainer.h:23
ISF::FatrasSimTool::simFlavor
virtual ISF::SimulationFlavor simFlavor() const override
Definition: FatrasSimTool.h:36
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
IParticleProcessor.h
initialize
void initialize()
Definition: run_EoverP.cxx:894
ISF::ISFParticle
Definition: ISFParticle.h:42
ISF::FatrasSimTool::setupEvent
virtual StatusCode setupEvent(const EventContext &) override
Setup Event chain - in case of a begin-of event action is needed.
Definition: FatrasSimTool.h:32
IParticleFilter.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
test_pyathena.parent
parent
Definition: test_pyathena.py:15
BaseSimulatorTool.h
McEventCollection
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
Definition: McEventCollection.h:33
ISF::FatrasSimTool::releaseEvent
virtual StatusCode releaseEvent(const EventContext &) override
Release Event chain - in case of an end-of event action is needed.
Definition: FatrasSimTool.h:34
ISF::BaseSimulatorTool
Definition: BaseSimulatorTool.h:36
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
ISF::Fatras
@ Fatras
Definition: SimulationFlavor.h:22
ISF::FatrasSimTool
Definition: FatrasSimTool.h:22
ISF
ISFParticleOrderedQueue.
Definition: PrimaryParticleInformation.h:13
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
checker_macros.h
Define macros for attributes used to control the static checker.
ISF::SimulationFlavor
int SimulationFlavor
Identifier type for simulation flavor.
Definition: SimulationFlavor.h:16