FairRoot/PandaRoot
Public Member Functions | Public Attributes | Private Attributes | List of all members
PndEmcPSATrapDigiFilter Class Reference

Pulseshape analysis for ADC waveforms. More...

#include <PndEmcPSATrapDigiFilter.h>

Inheritance diagram for PndEmcPSATrapDigiFilter:
PndEmcAbsPSA

Public Member Functions

 PndEmcPSATrapDigiFilter (const std::vector< Double_t > params)
 
virtual ~PndEmcPSATrapDigiFilter ()
 
virtual Int_t Process (const PndEmcWaveform *waveform)
 Find Hits in Waveform. More...
 
virtual void GetHit (Int_t i, Double_t &energy, Double_t &time)
 Get energy and time of hit. More...
 
virtual void Process (const PndEmcWaveform *waveform, Double_t &amplitude, Double_t &time)
 Deprecated. Do not use. More...
 
void Draw (const PndEmcWaveform *waveform)
 
virtual void Reset ()
 reset found hits More...
 
 ClassDef (PndEmcAbsPSA, 1)
 

Public Attributes

std::vector< Double_tfParams
 

Private Attributes

Double_t lAmplitude
 
Double_t lTime
 

Detailed Description

Pulseshape analysis for ADC waveforms.

Definition at line 21 of file PndEmcPSATrapDigiFilter.h.

Constructor & Destructor Documentation

PndEmcPSATrapDigiFilter::PndEmcPSATrapDigiFilter ( const std::vector< Double_t params)

Definition at line 20 of file PndEmcPSATrapDigiFilter.cxx.

20  :
21 fParams(params)
22 {}
std::vector< Double_t > fParams
virtual PndEmcPSATrapDigiFilter::~PndEmcPSATrapDigiFilter ( )
inlinevirtual

Definition at line 26 of file PndEmcPSATrapDigiFilter.h.

26 {;}

Member Function Documentation

PndEmcAbsPSA::ClassDef ( PndEmcAbsPSA  ,
 
)
inherited
void PndEmcPSATrapDigiFilter::Draw ( const PndEmcWaveform waveform)
void PndEmcPSATrapDigiFilter::GetHit ( Int_t  i,
Double_t energy,
Double_t time 
)
virtual

Get energy and time of hit.

Parameters
Int_tIndex of Hit
Double_tEnergy of Hit
Double_tTime of Hit
Returns

Implements PndEmcAbsPSA.

Definition at line 32 of file PndEmcPSATrapDigiFilter.cxx.

References lAmplitude, and lTime.

32  { // i //[R.K.03/2017] unused variable(s)
34  time = lTime;
35 }
Double_t energy
Definition: plot_dirc.C:15
Int_t PndEmcPSATrapDigiFilter::Process ( const PndEmcWaveform waveform)
virtual

Find Hits in Waveform.

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

Implements PndEmcAbsPSA.

Definition at line 24 of file PndEmcPSATrapDigiFilter.cxx.

References lAmplitude, and lTime.

24  {
25  Process(waveform,lAmplitude,lTime);
26  if(lAmplitude > 0){
27  return 1;
28  }else{
29  return 0;
30  }
31 }
virtual Int_t Process(const PndEmcWaveform *waveform)
Find Hits in Waveform.
void PndEmcPSATrapDigiFilter::Process ( const PndEmcWaveform waveform,
Double_t amplitude,
Double_t time 
)
virtual

Deprecated. Do not use.

Parameters
PndEmcWaveform
Double_t
Double_t
Returns

Reimplemented from PndEmcAbsPSA.

Definition at line 36 of file PndEmcPSATrapDigiFilter.cxx.

References PndEmcFadcFilter::Filter(), fParams, PndEmcWaveform::GetSignal(), output, and PndEmcFadcFilter::SetupTrapez().

37 {
38  const std::vector<Double_t> signal=waveform->GetSignal();
39  std::vector<Double_t> output;
40 
41  // Signal filtartion
42  Int_t rise_time=(Int_t) fParams[0]; // rise time of trapezoid (in sampling periods)
43  Int_t flat_length=(Int_t) fParams[1]; // length of the flat top period of trapezoid (in sampling periods)
44  Int_t shift=(Int_t) fParams[2]; // shift of the point to determine energy
45 
46  Int_t energy_point = rise_time+flat_length+shift-1;
47 
49  flt->SetupTrapez(rise_time,flat_length);
50  flt->Filter(signal, output);
51  delete flt;
52 
53  amplitude=output[energy_point];
54 
55  // Determination of the time is not yet implemented
56  time=0;
57 
58  return;
59 }
virtual void Filter(const std::vector< Double_t > &in, std::vector< Double_t > &out) const
virtual std::vector< double > GetSignal() const
std::vector< Double_t > fParams
FairParRootFileIo * output
Definition: sim_emc_apd.C:120
FADC FIR (finite impulse response) filter.
void SetupTrapez(Int_t i_rise, Int_t i_flat)
virtual void PndEmcAbsPSA::Reset ( )
inlinevirtualinherited

reset found hits

Returns

Reimplemented in PndEmcPSAFPGASampleAnalyser, and PndEmcHighLowPSA.

Definition at line 42 of file PndEmcAbsPSA.h.

42 {};

Member Data Documentation

std::vector<Double_t> PndEmcPSATrapDigiFilter::fParams

Definition at line 34 of file PndEmcPSATrapDigiFilter.h.

Referenced by Process().

Double_t PndEmcPSATrapDigiFilter::lAmplitude
private

Definition at line 37 of file PndEmcPSATrapDigiFilter.h.

Referenced by GetHit(), and Process().

Double_t PndEmcPSATrapDigiFilter::lTime
private

Definition at line 38 of file PndEmcPSATrapDigiFilter.h.

Referenced by GetHit(), and Process().


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