ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TilePulseSimulator
TilePulseSimulator
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
:
18
TileSampleGenerator
();
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
float
fillSample
(
double
t0
,
double
pedestal,
const
std::vector<float>& amp_pu, TF1* pdf,
bool
addNoise,
int
nPul = 21,
int
gain = 1);
28
void
fill7SamplesQIE
(
float
amp_it,
float
*amp_pu);
//The function calculates charges for 7 intervals with each interval of 25 ns
29
30
private
:
31
TilePulseShape
*
m_ps
;
32
TileSampleBuffer
*
m_buf
;
33
bool
m_DEBUG
;
34
TRandom3*
m_rndm
;
35
36
public
:
37
38
};
39
40
#endif
// TILEPULSESIMULATOR_TILESAMPLEGENERATOR_H
t0
static Double_t t0
Definition
LArPhysWaveHECTool.cxx:38
TilePulseShape
Definition
TilePulseShape.h:17
TileSampleBuffer
Definition
TileSampleBuffer.h:14
TileSampleGenerator::~TileSampleGenerator
virtual ~TileSampleGenerator()
Definition
TileSampleGenerator.cxx:35
TileSampleGenerator::m_ps
TilePulseShape * m_ps
Definition
TileSampleGenerator.h:31
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::m_rndm
TRandom3 * m_rndm
Definition
TileSampleGenerator.h:34
TileSampleGenerator::fillNSamples
void fillNSamples(double t0, double pedestal, double amp_it, const std::vector< float > &_pu, TF1 *pdf, bool addNoise, double itOffset=0, int nSamples=7, int nPul=21)
Definition
TileSampleGenerator.cxx:64
TileSampleGenerator::m_buf
TileSampleBuffer * m_buf
Definition
TileSampleGenerator.h:32
TileSampleGenerator::setPulseShape
void setPulseShape(TilePulseShape *ps)
Definition
TileSampleGenerator.h:22
TileSampleGenerator::fill7SamplesQIE
void fill7SamplesQIE(float amp_it, float *amp_pu)
Definition
TileSampleGenerator.cxx:177
TileSampleGenerator::fillSample
float fillSample(double t0, double pedestal, const std::vector< float > &_pu, TF1 *pdf, bool addNoise, int nPul=21, int gain=1)
Definition
TileSampleGenerator.cxx:131
TileSampleGenerator::TileSampleGenerator
TileSampleGenerator()
Definition
TileSampleGenerator.cxx:21
TileSampleGenerator::m_DEBUG
bool m_DEBUG
Definition
TileSampleGenerator.h:33
Generated on
for ATLAS Offline Software by
1.17.0