FairRoot/PandaRoot
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
PndEmcPSAFPGADigitalFilterAnalyser Class Reference

#include <PndEmcPSAFPGADigitalFilterAnalyser.h>

Inheritance diagram for PndEmcPSAFPGADigitalFilterAnalyser:
PndEmcPSAFPGASampleAnalyser PndEmcAbsPSA

Public Types

enum  status_t {
  kBaseline, kInPulse, kPulseDetected, kPulseFinished,
  kPileupFinished, kUndefined =99
}
 

Public Member Functions

 PndEmcPSAFPGADigitalFilterAnalyser ()
 
 PndEmcPSAFPGADigitalFilterAnalyser (const std::string &fname)
 
 ~PndEmcPSAFPGADigitalFilterAnalyser ()
 
virtual void setBaselineInterval (int anl_start, int bl_stop)
 
virtual float baseline ()
 
virtual void init (PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams &params)
 
virtual void reset ()
 
virtual void put (float valueToStore)
 
virtual void enable_mwd_filter (bool flag)
 
virtual Int_t Process (const PndEmcWaveform *waveform)
 Find Hits in Waveform. More...
 
virtual void initFromFile (const std::string &fname)
 
virtual void setBaseline (float newBaseline)
 
int nHits ()
 
float sampleTime (int index)
 
float sampleAmplitude (int index)
 
float sampleIntegral (int index)
 
virtual void Process (const PndEmcWaveform *waveform, Double_t &amplitude, Double_t &time)
 Deprecated. Do not use. More...
 
virtual void Reset ()
 reset found hits More...
 
virtual void GetHit (Int_t i, Double_t &energy, Double_t &time)
 Get energy and time of hit. More...
 
virtual void Init (const std::vector< Double_t > &params)
 
status_t GetStatus ()
 
 ClassDef (PndEmcAbsPSA, 1)
 

Protected Member Functions

 ClassDef (PndEmcPSAFPGASampleAnalyser, 2)
 

Protected Attributes

SampleAnalyserParams analyserParams
 
float baseline_value
 
unsigned int local_time
 
bool pulse_detected
 
int rough_pulse_timing
 
int cf_zero_crossing_points
 
PndEmcPSAFPGAFilterCFCF_filter
 
PndEmcPSAFPGAFilterMAMA_triggering
 
PndEmcPSAFPGAFilterDelayMA_delay
 
PndEmcPSAFPGAFilterDelayCF_delay
 
PndEmcPSAFPGAFilterDelaySignal_delay
 
PndEmcPSAFPGALinFitterCF_Fitter
 
int Number_of_hits
 
float time [MAX_NUMBER_OF_HITS]
 
float integral [MAX_NUMBER_OF_HITS]
 
float amplitude [MAX_NUMBER_OF_HITS]
 
status_t status
 

Private Member Functions

 ClassDef (PndEmcPSAFPGADigitalFilterAnalyser, 1)
 

Private Attributes

unsigned int analysis_start_position
 
unsigned int baseline_stop_position
 
float baseline_value_calculated
 
float ma_value_delay
 
int increasement
 
int decreasement
 
bool useMWDFilter
 
bool pulse_finished
 
int ith_pulse
 
int rising_count
 
PndEmcPSAFPGAFilterMWDMWD_filter
 

Detailed Description

Definition at line 11 of file PndEmcPSAFPGADigitalFilterAnalyser.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

PndEmcPSAFPGADigitalFilterAnalyser::PndEmcPSAFPGADigitalFilterAnalyser ( )

Definition at line 13 of file PndEmcPSAFPGADigitalFilterAnalyser.cxx.

References analysis_start_position, baseline_stop_position, PndEmcPSAFPGASampleAnalyser::baseline_value, increasement, ith_pulse, ma_value_delay, MWD_filter, pulse_finished, and useMWDFilter.

13  :
18  increasement = 0;
19  ma_value_delay = 0.;
20  useMWDFilter = false;
21  baseline_value = 0.;
22  pulse_finished = true;
23  ith_pulse = 0;
24 }
PndEmcPSAFPGADigitalFilterAnalyser::PndEmcPSAFPGADigitalFilterAnalyser ( const std::string &  fname)

Definition at line 26 of file PndEmcPSAFPGADigitalFilterAnalyser.cxx.

References analysis_start_position, baseline_stop_position, PndEmcPSAFPGASampleAnalyser::baseline_value, increasement, ith_pulse, ma_value_delay, MWD_filter, pulse_finished, and useMWDFilter.

26  :
31  increasement = 0;
32  ma_value_delay = 0.;
33  useMWDFilter = false;
34  baseline_value = 0.;
35  pulse_finished = true;
36  ith_pulse = 0;
37 }
PndEmcPSAFPGADigitalFilterAnalyser::~PndEmcPSAFPGADigitalFilterAnalyser ( )

Definition at line 39 of file PndEmcPSAFPGADigitalFilterAnalyser.cxx.

References MWD_filter.

39  {
40  delete MWD_filter;
41 }

Member Function Documentation

float PndEmcPSAFPGADigitalFilterAnalyser::baseline ( )
virtual
PndEmcPSAFPGADigitalFilterAnalyser::ClassDef ( PndEmcPSAFPGADigitalFilterAnalyser  ,
 
)
private
PndEmcAbsPSA::ClassDef ( PndEmcAbsPSA  ,
 
)
inherited
PndEmcPSAFPGASampleAnalyser::ClassDef ( PndEmcPSAFPGASampleAnalyser  ,
 
)
protectedinherited
void PndEmcPSAFPGADigitalFilterAnalyser::enable_mwd_filter ( bool  flag)
virtual
void PndEmcPSAFPGASampleAnalyser::GetHit ( Int_t  i,
Double_t energy,
Double_t time 
)
virtualinherited

Get energy and time of hit.

Parameters
Int_tIndex of Hit
Double_tEnergy of Hit
Double_tTime of Hit
Returns

Implements PndEmcAbsPSA.

Reimplemented in PndEmcPSAFPGAPileupAnalyser.

Definition at line 189 of file PndEmcPSAFPGASampleAnalyser.cxx.

References PndEmcPSAFPGASampleAnalyser::sampleAmplitude(), and PndEmcPSAFPGASampleAnalyser::sampleTime().

Referenced by PndEmcHighLowPSA::GetHit().

189  {
190  //energy = this->sampleIntegral(i);
191  energy = this->sampleAmplitude(i);
192  t = this->sampleTime(i);
193 }
Int_t i
Definition: run_full.C:25
TTree * t
Definition: bump_analys.C:13
Double_t energy
Definition: plot_dirc.C:15
status_t PndEmcPSAFPGASampleAnalyser::GetStatus ( )
inlineinherited
void PndEmcPSAFPGADigitalFilterAnalyser::init ( PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams params)
virtual
void PndEmcPSAFPGASampleAnalyser::Init ( const std::vector< Double_t > &  params)
virtualinherited

Definition at line 132 of file PndEmcPSAFPGASampleAnalyser.cxx.

References PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_delay, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_fit_offset, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_fitter_length, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_ratio, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::clock_unit, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::hit_threshold, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::iafactor, PndEmcPSAFPGASampleAnalyser::init(), PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::ma_trig_M, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::mwd_length, and PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::mwd_tau.

132  {
133  SampleAnalyserParams newParams;
134  newParams.ma_trig_M = (int) params.at(0);
135  newParams.hit_threshold = params.at(1);
136  newParams.cf_delay = (int) params.at(2);
137  newParams.cf_ratio = params.at(3);
138  newParams.cf_fitter_length = (int) params.at(4);
139  newParams.cf_fit_offset = (int) params.at(5);
140  newParams.mwd_length = (int) params.at(6);
141  newParams.mwd_tau = params.at(7);
142  newParams.clock_unit = params.at(8);
143  newParams.iafactor = params.at(9);
144  /*
145  std::cout << newParams.ma_trig_M << std::endl;
146  std::cout << newParams.hit_threshold << std::endl;
147  std::cout << newParams.cf_delay << std::endl;
148  std::cout << newParams.cf_ratio << std::endl;
149  std::cout << newParams.cf_fitter_length << std::endl;
150  std::cout << newParams.cf_fit_offset << std::endl;
151  std::cout << newParams.mwd_length << std::endl;
152  std::cout << newParams.mwd_tau << std::endl;
153 */
154  init(newParams);
155  return;
156 }
virtual void init(SampleAnalyserParams &params)
void PndEmcPSAFPGASampleAnalyser::initFromFile ( const std::string &  fname)
virtualinherited

Definition at line 71 of file PndEmcPSAFPGASampleAnalyser.cxx.

References PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_delay, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_fit_offset, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_fitter_length, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_ratio, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::clock_unit, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::hit_threshold, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::iafactor, PndEmcPSAFPGASampleAnalyser::init(), PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::ma_trig_M, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::mwd_length, and PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::mwd_tau.

Referenced by PndEmcPSAFPGASampleAnalyser::PndEmcPSAFPGASampleAnalyser().

71  {// fname //[R.K.03/2017] unused variable(s)
72  SampleAnalyserParams newParams;
73  newParams.hit_threshold = 200;
74  newParams.ma_trig_M = 30;
75  newParams.cf_delay = 5;
76  newParams.cf_ratio = 0.15;
77  newParams.cf_fitter_length = 5;
78  newParams.cf_fit_offset = 2;
79  newParams.mwd_length = 90;
80  newParams.mwd_tau = 2500;
81  newParams.clock_unit = 10;//ns
82  newParams.iafactor= 1.;//ns
83 
84 /* std::ifstream ifile(fname.c_str());
85  if(!ifile) {
86  std::cerr << "Can not open input file: " << fname << "\n";
87  exit(1);
88  }
89 
90  std::set<std::string> options;
91  options.insert("MWD_Tau");
92  options.insert("MWD_Length");
93  options.insert("TR_Thresh");
94  options.insert("CFD_Ratio");
95  options.insert("CFD_Delay");
96  options.insert("Fit_ofset");
97  options.insert("Fitter_L");
98  options.insert("MA_trig");
99 
100  //parser
101  for (pod::config_file_iterator i(ifile, options), e ; i != e; ++i) {
102  if (i->string_key == "MWD_Tau") {
103  newParams.mwd_tau = atof((i->value[0]).c_str());
104  }
105  if (i->string_key == "MWD_Length") {
106  newParams.mwd_length = atoi((i->value[0]).c_str());
107  }
108  if (i->string_key == "TR_Thresh") {
109  newParams.hit_threshold = atof((i->value[0]).c_str());
110  }
111  if (i->string_key == "CFD_Ratio") {
112  newParams.cf_ratio = atof((i->value[0]).c_str());
113  }
114  if (i->string_key == "CFD_Delay") {
115  newParams.cf_delay = atoi((i->value[0]).c_str());
116  }
117  if (i->string_key == "Fit_ofset") {
118  newParams.cf_fit_offset = atoi((i->value[0]).c_str());
119  }
120  if (i->string_key == "Fitter_L") {
121  newParams.cf_fitter_length = atoi((i->value[0]).c_str());
122  }
123  if (i->string_key == "MA_trig") {
124  newParams.ma_trig_M = atoi((i->value[0]).c_str());
125  }
126  }
127 
128  ifile.close();*/
129  init(newParams);
130  return;
131 }
virtual void init(SampleAnalyserParams &params)
int PndEmcPSAFPGASampleAnalyser::nHits ( )
inlineinherited
Int_t PndEmcPSAFPGADigitalFilterAnalyser::Process ( const PndEmcWaveform waveform)
virtual

Find Hits in Waveform.

Parameters
PndEmcWaveform
Returns
Return number of hits, negative if an error occurred

Reimplemented from PndEmcPSAFPGASampleAnalyser.

Definition at line 79 of file PndEmcPSAFPGADigitalFilterAnalyser.cxx.

References PndEmcPSAFPGASampleAnalyser::baseline_value, PndEmcWaveform::GetBaseline(), PndEmcWaveform::GetSignal(), PndEmcPSAFPGASampleAnalyser::nHits(), put(), and reset().

80 {
81  //std::cout<<"PndEmcPSAFPGADigitalFilterAnalyser::Process# MWD used = "<<useMWDFilter<<std::endl;
82  reset();
83  std::vector<double> signal = waveform->GetSignal();
84  std::vector<double>::iterator it;
85  //read directly
86  baseline_value = waveform->GetBaseline();
87  //std::cout<<"PndEmcPSAFPGADigitalFilterAnalyser:: Process, baseline_value#"<<baseline_value<<std::endl;
88  for(it = signal.begin(); it < signal.end();it++){
89  this->put(*it);
90  }
91  return this->nHits();
92 }
virtual std::vector< double > GetSignal() const
Double_t GetBaseline() const
void PndEmcAbsPSA::Process ( const PndEmcWaveform waveform,
Double_t amplitude,
Double_t time 
)
virtualinherited

Deprecated. Do not use.

Parameters
PndEmcWaveform
Double_t
Double_t
Returns

Reimplemented in PndEmcPSAMatchedDigiFilter, PndEmcPSAParabolic, PndEmcPSAParabolicBaseline, and PndEmcPSATrapDigiFilter.

Definition at line 2 of file PndEmcAbsPSA.cxx.

References PndEmcAbsPSA::GetHit(), and PndEmcAbsPSA::Process().

2  {
3  if(Process(waveform)>0){
4  GetHit(0,amplitude,time);
5  }else{
6  amplitude = 0.;
7  time = 0.;
8  }
9  }; //deprecated do not use
virtual Int_t Process(const PndEmcWaveform *waveform)=0
Find Hits in Waveform.
virtual void GetHit(Int_t i, Double_t &energy, Double_t &time)=0
Get energy and time of hit.
void PndEmcPSAFPGADigitalFilterAnalyser::put ( float  valueToStore)
virtual

analyserParams.ma_trig_M))

Implements PndEmcPSAFPGASampleAnalyser.

Definition at line 172 of file PndEmcPSAFPGADigitalFilterAnalyser.cxx.

References a, PndEmcPSAFPGASampleAnalyser::amplitude, PndEmcPSAFPGASampleAnalyser::analyserParams, analysis_start_position, baseline_stop_position, PndEmcPSAFPGASampleAnalyser::baseline_value, baseline_value_calculated, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_delay, PndEmcPSAFPGASampleAnalyser::CF_delay, PndEmcPSAFPGASampleAnalyser::CF_filter, PndEmcPSAFPGASampleAnalyser::CF_Fitter, PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::cf_fitter_length, PndEmcPSAFPGASampleAnalyser::cf_zero_crossing_points, PndEmcPSAFPGALinFitter::fit(), PndEmcPSAFPGASampleAnalyser::SampleAnalyserParams::hit_threshold, PndEmcPSAFPGASampleAnalyser::integral, PndEmcPSAFPGASampleAnalyser::local_time, PndEmcPSAFPGASampleAnalyser::MA_triggering, MWD_filter, PndEmcPSAFPGASampleAnalyser::Number_of_hits, PndEmcPSAFPGALinFitter::offset(), PndEmcPSAFPGASampleAnalyser::pulse_detected, PndEmcPSAFPGAFilterDelay::put(), PndEmcPSAFPGAFilterMA::put(), PndEmcPSAFPGAFilterMWD::put(), PndEmcPSAFPGAFilterCF::put(), PndEmcPSAFPGALinFitter::putPoint(), PndEmcPSAFPGALinFitter::reset(), PndEmcPSAFPGASampleAnalyser::rough_pulse_timing, PndEmcPSAFPGASampleAnalyser::Signal_delay, PndEmcPSAFPGALinFitter::slope(), PndEmcPSAFPGASampleAnalyser::time, and useMWDFilter.

Referenced by Process().

173 {
174  //float mwd_val = MWD_filter->put(valueToStore);
175  float mwd_val = valueToStore;
176  if(useMWDFilter)
177  mwd_val = MWD_filter->put(valueToStore);
178 
180  local_time++;
181  return;
182  }
184  baseline_value_calculated += mwd_val;
185  //
186  // uncomment lines below for automatic baseline calculation; does not work for high rates
188  local_time++;
189  return;
190  }
191  float signal = mwd_val - baseline_value;
192  float signal_delayed = Signal_delay->put(signal);
193  float cf_value = CF_filter->put(signal);
194  float cf_value_delayed = CF_delay->put(cf_value);
195  float ma_value = MA_triggering->put(signal);
196  //cout<<"local_time #"<<local_time<<", raw#"<<valueToStore<<", mwd#"<<signal<<", ma#"<<ma_value<<", cfd#"<<cf_value<<endl;
197  int dT = local_time - rough_pulse_timing;
198  if (!pulse_detected) {
199  if((cf_value_delayed < 0.0) && (cf_value > 0.0) && (ma_value > analyserParams.hit_threshold)) {
200  //cout<<"detect pulse #"<<local_time<<", value#"<<cf_value <<endl;
201  // hit detected
202  // CF
203  //cout<<"hit ["<<Number_of_hits<<"] # idx"<<cf_zero_crossing_points<<", #"<<local_time<<", v#"<<cf_value_delayed<<endl;
204  CF_Fitter->reset();
205  CF_Fitter->putPoint(local_time, cf_value_delayed);
207  pulse_detected = true;
208  rough_pulse_timing = local_time;
209  integral[Number_of_hits] = 0.0;
210  amplitude[Number_of_hits] = 0.0;
211  }
212  } else {
213  // CF timing
215  //cout<<"hit ["<<Number_of_hits<<"] # idx"<<cf_zero_crossing_points<<", #"<<local_time<<", v#"<<cf_value_delayed<<endl;
216  CF_Fitter->putPoint(local_time, cf_value_delayed);
218  }
219  // Integral
220  integral[Number_of_hits] += signal_delayed;
221  // Amplitude
222  if( (dT < 2*analyserParams.cf_delay) && (signal_delayed > amplitude[Number_of_hits]) ) {
223  //cout<<"update amp t#"<<local_time<<", a#"<<signal_delayed<<endl;
224  amplitude[Number_of_hits] = signal_delayed;
225  }
226  // Finalize pulse detection
227  //cout<<"dT#"<<dT<<", cf_delay#"<<analyserParams.cf_delay;
228  //cout<<"ma #"<<ma_value<<", signal_delayed #"<<signal_delayed<<", analyserParams.hit_threshold#"<<analyserParams.hit_threshold<<endl;
229  if( (dT > 2*analyserParams.cf_delay) && (signal_delayed < analyserParams.hit_threshold)){
230  //cout<<"finish pulse #"<<local_time<<", cf_value_delayed#"<<cf_value_delayed<<", dT#"<<dT<<endl;
233  pulse_detected = false;
234  CF_Fitter->fit();
235  double a = CF_Fitter->offset();
236  double k = CF_Fitter->slope();
237  time[Number_of_hits] = 0.0;
238  //if(k > 0){
239  // if(-a/k < 0 || -a/k > 3*analyserParams.cf_delay ) time[Number_of_hits] = CF_Fitter->averageX();
240  // else
241  // time[Number_of_hits] = -a/k;
242  // Number_of_hits++;
243  //}
244  if(k > 0 && -a/k > 0 && -a/k < 3*analyserParams.cf_delay){
245  time[Number_of_hits] = -a/k;
246  Number_of_hits++;
247  }
248  }
249  }
250 
251  local_time++;
252 }
float put(float valueToStore)
float integral[MAX_NUMBER_OF_HITS]
float put(float valueToStore)
void putPoint(double ix, double iy)
float amplitude[MAX_NUMBER_OF_HITS]
Int_t a
Definition: anaLmdDigi.C:126
virtual float put(float valueToStore)
PndEmcPSAFPGAFilterDelay * Signal_delay
virtual float put(float valueToStore)
PndEmcPSAFPGAFilterDelay * CF_delay
void PndEmcPSAFPGADigitalFilterAnalyser::reset ( )
virtual

Implements PndEmcPSAFPGASampleAnalyser.

Definition at line 63 of file PndEmcPSAFPGADigitalFilterAnalyser.cxx.

References baseline_value_calculated, PndEmcPSAFPGASampleAnalyser::CF_delay, PndEmcPSAFPGASampleAnalyser::CF_filter, ith_pulse, PndEmcPSAFPGASampleAnalyser::local_time, PndEmcPSAFPGASampleAnalyser::MA_triggering, MWD_filter, PndEmcPSAFPGASampleAnalyser::Number_of_hits, PndEmcPSAFPGASampleAnalyser::pulse_detected, pulse_finished, PndEmcPSAFPGAFilterDelay::resetToZero(), PndEmcPSAFPGAFilterMA::resetToZero(), PndEmcPSAFPGAFilterCF::resetToZero(), PndEmcPSAFPGAFilterMWD::resetToZero(), rising_count, and PndEmcPSAFPGASampleAnalyser::Signal_delay.

Referenced by Process().

63  {
64  local_time = 0;
65  Number_of_hits = 0;
72  pulse_detected = false;
73 
74  pulse_finished = true;
75  ith_pulse = 0;
76  rising_count = 0;
77  return;
78 }
PndEmcPSAFPGAFilterDelay * Signal_delay
PndEmcPSAFPGAFilterDelay * CF_delay
virtual void PndEmcPSAFPGASampleAnalyser::Reset ( )
inlinevirtualinherited

reset found hits

Returns

Reimplemented from PndEmcAbsPSA.

Definition at line 34 of file PndEmcPSAFPGASampleAnalyser.h.

References PndEmcPSAFPGASampleAnalyser::reset().

Referenced by PndEmcHighLowPSA::Reset().

34 {this->reset();};
float PndEmcPSAFPGASampleAnalyser::sampleAmplitude ( int  index)
inherited
float PndEmcPSAFPGASampleAnalyser::sampleIntegral ( int  index)
inherited

Definition at line 171 of file PndEmcPSAFPGASampleAnalyser.cxx.

References PndEmcPSAFPGASampleAnalyser::integral, and PndEmcPSAFPGASampleAnalyser::nHits().

Referenced by PndEmcPSAFPGAPileupAnalyser::GetEnergyMeasures().

171  {
172  if (index < nHits() && index >= 0)
173  return integral[index];
174  return 0.0;
175 }
float integral[MAX_NUMBER_OF_HITS]
float PndEmcPSAFPGASampleAnalyser::sampleTime ( int  index)
inherited

Definition at line 159 of file PndEmcPSAFPGASampleAnalyser.cxx.

References PndEmcPSAFPGASampleAnalyser::nHits(), and PndEmcPSAFPGASampleAnalyser::time.

Referenced by PndEmcPSAFPGAPileupAnalyser::GetHit(), and PndEmcPSAFPGASampleAnalyser::GetHit().

159  {
160  if (index < nHits() && index >= 0)
161  return time[index];
162  return 0.0;
163 }
virtual void PndEmcPSAFPGASampleAnalyser::setBaseline ( float  newBaseline)
inlinevirtualinherited
void PndEmcPSAFPGADigitalFilterAnalyser::setBaselineInterval ( int  anl_start,
int  bl_stop 
)
virtual

Member Data Documentation

float PndEmcPSAFPGASampleAnalyser::amplitude[MAX_NUMBER_OF_HITS]
protectedinherited
SampleAnalyserParams PndEmcPSAFPGASampleAnalyser::analyserParams
protectedinherited
unsigned int PndEmcPSAFPGADigitalFilterAnalyser::analysis_start_position
private
unsigned int PndEmcPSAFPGADigitalFilterAnalyser::baseline_stop_position
private
float PndEmcPSAFPGASampleAnalyser::baseline_value
protectedinherited
float PndEmcPSAFPGADigitalFilterAnalyser::baseline_value_calculated
private

Definition at line 30 of file PndEmcPSAFPGADigitalFilterAnalyser.h.

Referenced by baseline(), put(), and reset().

PndEmcPSAFPGAFilterDelay* PndEmcPSAFPGASampleAnalyser::CF_delay
protectedinherited
PndEmcPSAFPGAFilterCF* PndEmcPSAFPGASampleAnalyser::CF_filter
protectedinherited
PndEmcPSAFPGALinFitter* PndEmcPSAFPGASampleAnalyser::CF_Fitter
protectedinherited
int PndEmcPSAFPGASampleAnalyser::cf_zero_crossing_points
protectedinherited

Definition at line 69 of file PndEmcPSAFPGASampleAnalyser.h.

Referenced by put(), and PndEmcPSAFPGAIntegratingAnalyser::put().

int PndEmcPSAFPGADigitalFilterAnalyser::decreasement
private

Definition at line 33 of file PndEmcPSAFPGADigitalFilterAnalyser.h.

int PndEmcPSAFPGADigitalFilterAnalyser::increasement
private
float PndEmcPSAFPGASampleAnalyser::integral[MAX_NUMBER_OF_HITS]
protectedinherited
int PndEmcPSAFPGADigitalFilterAnalyser::ith_pulse
private
unsigned int PndEmcPSAFPGASampleAnalyser::local_time
protectedinherited
PndEmcPSAFPGAFilterDelay* PndEmcPSAFPGASampleAnalyser::MA_delay
protectedinherited
PndEmcPSAFPGAFilterMA* PndEmcPSAFPGASampleAnalyser::MA_triggering
protectedinherited
float PndEmcPSAFPGADigitalFilterAnalyser::ma_value_delay
private
PndEmcPSAFPGAFilterMWD* PndEmcPSAFPGADigitalFilterAnalyser::MWD_filter
private
int PndEmcPSAFPGASampleAnalyser::Number_of_hits
protectedinherited
bool PndEmcPSAFPGASampleAnalyser::pulse_detected
protectedinherited
bool PndEmcPSAFPGADigitalFilterAnalyser::pulse_finished
private
int PndEmcPSAFPGADigitalFilterAnalyser::rising_count
private

Definition at line 37 of file PndEmcPSAFPGADigitalFilterAnalyser.h.

Referenced by reset().

int PndEmcPSAFPGASampleAnalyser::rough_pulse_timing
protectedinherited
PndEmcPSAFPGAFilterDelay* PndEmcPSAFPGASampleAnalyser::Signal_delay
protectedinherited
status_t PndEmcPSAFPGASampleAnalyser::status
protectedinherited
float PndEmcPSAFPGASampleAnalyser::time[MAX_NUMBER_OF_HITS]
protectedinherited
bool PndEmcPSAFPGADigitalFilterAnalyser::useMWDFilter
private

The documentation for this class was generated from the following files: