![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TILERECUTILS_TILERAWCHANNELBUILDERFITFILTERCOOL_H
6 #define TILERECUTILS_TILERAWCHANNELBUILDERFITFILTERCOOL_H
25 #include "GaudiKernel/IIncidentListener.h"
32 #define PHYS_START_T_HI -75.5
33 #define PHYS_START_T_LO -75.5
34 #define PHYS_DT_HI 0.5
35 #define PHYS_DT_LO 0.5
36 #define CIS_START_T_HI -100.
37 #define CIS_START_T_LO -100.
38 #define SCIS_START_T_HI -72.
39 #define SCIS_START_T_LO -72.
41 #define LEAK_START_T_HI -100.
42 #define LEAK_START_T_LO -100.
43 #define SLEAK_START_T_HI -72.
44 #define SLEAK_START_T_LO -72.
46 #define LAS_START_T_HI -68.
47 #define LAS_START_T_LO -68.
53 ,
public IIncidentListener {
74 virtual void handle(
const Incident&)
override;
81 double pulse(
double x,
const std::vector<double> * xvec,
const std::vector<double> *
yvec,
bool zeroOutside =
false)
const;
83 double scaledPulse(
double x,
const std::vector<double> * xvec,
const std::vector<double> *
yvec)
const {
87 double derivative(
double x,
const std::vector<double> * xvec,
const std::vector<double> *
yvec)
const {
129 "TileCondToolPulseShape",
"TileCondToolPulseShape",
"Tile pulse shape tool"};
132 "TileCondToolLeak100Shape",
"",
"Tile CIS leakage shape for 100 pF capacitor tool"};
135 "TileCondToolLeak5p2Shape",
"",
"Tile CIS leakage shape for 5.2 pF capacitor tool"};
138 "TileCondToolPulse5p2Shape",
"",
"Tile CIS pulse shape for 5.2 pF capacitor tool"};
141 "TileCondToolNoiseSample",
"TileCondToolNoiseSample",
"Tile sample noise tool"};
147 #define DTIME 25.0 // 25 ns distance between subsequent samples
const TilePulseShapesStruct * m_pulseShapes
double pulse(double x, const std::vector< double > *xvec, const std::vector< double > *yvec, bool zeroOutside=false) const
pulse interpolation
double derivative(double x, const std::vector< double > *xvec, const std::vector< double > *yvec) const
std::vector< double > m_dummy
std::vector< double > m_gPhysHi
TilePulseShapesStruct * m_shapes
ToolHandle< TileCondToolNoiseSample > m_tileToolNoiseSample
ToolHandle< TileCondToolPulseShape > m_tileToolLeak5p2Shape
double m_noiseThresholdRMS
std::vector< double > m_gPhysLo
std::vector< double > m_dgPhysHi
::StatusCode StatusCode
StatusCode definition for legacy code.
void pulseFit(const TileDigits *digit, double &litude, double &time, double &pedestal, double &chi2, const EventContext &ctx)
Calculate energy, time and chi2 for one channel using fitted pulse shape.
ToolHandle< TileCondToolPulseShape > m_tileToolLeak100Shape
double chi2(TH1 *h0, TH1 *h1)
virtual StatusCode finalize() override
static const InterfaceID & interfaceID()
AlgTool InterfaceID.
TileRawChannelBuilderFitFilterCool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
ToolHandle< TileCondToolPulseShape > m_tileToolPulse5p2Shape
~TileRawChannelBuilderFitFilterCool()
Destructor.
def time(flags, cells_name, *args, **kw)
virtual StatusCode initialize() override
Initializer.
ToolHandle< TileCondToolPulseShape > m_tileToolPulseShape
double scaledPulse(double x, const std::vector< double > *xvec, const std::vector< double > *yvec) const
std::vector< double > m_dgPhysLo
double m_saturatedSampleError
virtual void handle(const Incident &) override
virtual TileRawChannel * rawChannel(const TileDigits *digits, const EventContext &ctx) override
Builder virtual method to be implemented by subclasses.