ATLAS Offline Software
FEI3SimTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3  */
11 #ifndef PIXELDIGITIZATION_FEI3SimTool_H
12 #define PIXELDIGITIZATION_FEI3SimTool_H
13 
14 #include "FrontEndSimTool.h"
15 #include "InDetRawData/PixelRDO_Collection.h" //typedef
16 #include "PixelConditionsData/PixelModuleData.h" //ReadCondHandleKey template param
17 
19 class SiTotalCharge;
20 class PixelModuleData;
21 
22 namespace CLHEP{
23  class HepRandomEngine;
24 }
25 
27 public:
28  FEI3SimTool(const std::string& type, const std::string& name, const IInterface* parent);
29 
30  virtual StatusCode initialize();
31  virtual StatusCode finalize();
32  virtual ~FEI3SimTool();
33  virtual void process(SiChargedDiodeCollection& chargedDiodes, PixelRDO_Collection& rdoCollection,
34  CLHEP::HepRandomEngine* rndmEngine);
35 private:
37  this, "PixelModuleData", "PixelModuleData", "Pixel module data"
38  };
39 
40 
41  Gaudi::Property<bool> m_duplication{
42  this, "HitDuplication", false, "Turn on Hit Duplication in subsequent timebin for small hits"
43  };
44 
45  int relativeBunch2009(const double threshold, const double intimethreshold, const SiTotalCharge& totalCharge,
46  CLHEP::HepRandomEngine* rndmEngine) const;
47 
48  double getProbability(const std::vector<float> &bounds, const std::vector<float> &probs, const double &val) const;
49 
50 };
51 
52 #endif // PIXELDIGITIZATION_FEI3SimTool_H
FEI3SimTool::getProbability
double getProbability(const std::vector< float > &bounds, const std::vector< float > &probs, const double &val) const
Definition: FEI3SimTool.cxx:263
PixelModuleData
Definition: PixelModuleData.h:22
FEI3SimTool
Definition: FEI3SimTool.h:26
FEI3SimTool::FEI3SimTool
FEI3SimTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: FEI3SimTool.cxx:23
SiChargedDiodeCollection
Definition: SiChargedDiodeCollection.h:109
PixelRDO_Collection.h
FrontEndSimTool
Definition: FrontEndSimTool.h:31
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
FEI3SimTool::finalize
virtual StatusCode finalize()
Definition: FEI3SimTool.cxx:36
CLHEP
STD'S.
Definition: IAtRndmGenSvc.h:19
InDetRawDataCollection
Definition: InDetRawDataCollection.h:31
test_pyathena.parent
parent
Definition: test_pyathena.py:15
FEI3SimTool::m_moduleDataKey
SG::ReadCondHandleKey< PixelModuleData > m_moduleDataKey
Definition: FEI3SimTool.h:36
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
threshold
Definition: chainparser.cxx:74
FEI3SimTool::initialize
virtual StatusCode initialize()
Definition: FEI3SimTool.cxx:29
FEI3SimTool::relativeBunch2009
int relativeBunch2009(const double threshold, const double intimethreshold, const SiTotalCharge &totalCharge, CLHEP::HepRandomEngine *rndmEngine) const
Definition: FEI3SimTool.cxx:231
SG::ReadCondHandleKey< PixelModuleData >
FrontEndSimTool.h
SiTotalCharge
Definition: SiTotalCharge.h:24
FEI3SimTool::~FEI3SimTool
virtual ~FEI3SimTool()
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
PixelModuleData.h
Store pixel constant parameters in PixelModuleData.
FEI3SimTool::process
virtual void process(SiChargedDiodeCollection &chargedDiodes, PixelRDO_Collection &rdoCollection, CLHEP::HepRandomEngine *rndmEngine)
Definition: FEI3SimTool.cxx:41
FEI3SimTool::m_duplication
Gaudi::Property< bool > m_duplication
Definition: FEI3SimTool.h:41