ATLAS Offline Software
TileSampleGenerator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TILEPULSESIMULATOR_TILESAMPLEGENERATOR_H
6 #define TILEPULSESIMULATOR_TILESAMPLEGENERATOR_H
7 
8 #include "TObject.h"
9 
10 
11 class TilePulseShape;
12 class TileSampleBuffer;
13 class TRandom3;
14 class TF1;
15 
16 class TileSampleGenerator: public TObject {
17 public:
19  TileSampleGenerator(TilePulseShape* ps, TileSampleBuffer* buf, bool dd_DEBUG = false);
20  virtual ~TileSampleGenerator();
21 
22  inline void setPulseShape(TilePulseShape* ps) {
23  m_ps = ps;
24  }
25  void fillSamples(double t0, double pedestal, double amplitude1, double amplitude2, TF1* pdf, bool addNoise, double itOffset = 0, double otOffset = 50);
26  void fillNSamples(double t0, double pedestal, double amp_it, const std::vector<float>& amp_pu, TF1* pdf, bool addNoise, double itOffset = 0, int nSamples = 7, int nPul = 21);
27  void fill7SamplesQIE(float amp_it, float *amp_pu); //The function calculates charges for 7 intervals with each interval of 25 ns
28 
29 private:
32  bool m_DEBUG;
33  TRandom3* m_rndm;
34 
35 public:
36 
37 };
38 
39 #endif // TILEPULSESIMULATOR_TILESAMPLEGENERATOR_H
TileSampleGenerator::fillNSamples
void fillNSamples(double t0, double pedestal, double amp_it, const std::vector< float > &amp_pu, TF1 *pdf, bool addNoise, double itOffset=0, int nSamples=7, int nPul=21)
Definition: TileSampleGenerator.cxx:64
ALFA_EventTPCnv_Dict::t0
std::vector< ALFA_RawData_p1 > t0
Definition: ALFA_EventTPCnvDict.h:42
TilePulseShape
Definition: TilePulseShape.h:17
TileSampleBuffer
Definition: TileSampleBuffer.h:14
TileSampleGenerator::fill7SamplesQIE
void fill7SamplesQIE(float amp_it, float *amp_pu)
Definition: TileSampleGenerator.cxx:135
TileSampleGenerator::m_ps
TilePulseShape * m_ps
Definition: TileSampleGenerator.h:30
TileSampleGenerator::m_DEBUG
bool m_DEBUG
Definition: TileSampleGenerator.h:32
TileSampleGenerator::fillSamples
void fillSamples(double t0, double pedestal, double amplitude1, double amplitude2, TF1 *pdf, bool addNoise, double itOffset=0, double otOffset=50)
Definition: TileSampleGenerator.cxx:41
TileSampleGenerator
Definition: TileSampleGenerator.h:16
TileSampleGenerator::~TileSampleGenerator
virtual ~TileSampleGenerator()
Definition: TileSampleGenerator.cxx:35
TileSampleGenerator::TileSampleGenerator
TileSampleGenerator()
Definition: TileSampleGenerator.cxx:21
Trk::addNoise
@ addNoise
Definition: MaterialUpdateMode.h:19
PowhegPythia8EvtGen_jetjet.pdf
pdf
Definition: PowhegPythia8EvtGen_jetjet.py:4
TileSampleGenerator::setPulseShape
void setPulseShape(TilePulseShape *ps)
Definition: TileSampleGenerator.h:22
TileSampleGenerator::m_rndm
TRandom3 * m_rndm
Definition: TileSampleGenerator.h:33
TileSampleGenerator::m_buf
TileSampleBuffer * m_buf
Definition: TileSampleGenerator.h:31
LArDigits2NtupleDumper.nSamples
nSamples
Definition: LArDigits2NtupleDumper.py:70