MarlinTPC
1.2.0
|
This processor creates lcio::TrackerPulse objects from lcio::TrackerData. More...
#include <PulseFinderProcessor.h>
Protected Attributes | |
std::string | _inputColName |
name of the collection, where input data are stored | |
std::string | _outputDataColName |
name of the collection, where TrackerData are stored | |
std::string | _outputPulseColName |
name of the collection, where TrackerPulse are stored | |
std::string | _pedestalColName |
the name of the pedestal collection | |
std::string | _electrParaObjName |
Name of the conditions object in which the parameters of the read out electronics is stored. | |
std::string | _electrParaColName |
Name of the conditions collection in which the parameters of the read out electronics is stored. | |
bool | _outputIsPersistent |
Set this flag to use the amplitude (maximum bin value) of the pulse as the charge. More... | |
bool | _forceSpectrumSave |
if not 0 the ADC spectrum will be saved for all pulses | |
bool | _switchOffSplitting |
if not 0 pulses will not be split | |
int | _chargeCalculationMode |
the mode to calulate the charge | |
int | _timeCalculationMode |
the mode to calulate the time | |
double | _timeCalculationParameter |
parameter for time methods (different meaning for different methods) | |
float | _pulseStartPedestalWidthFactor |
factor to calculate the start threshold | |
float | _pulseEndPedestalWidthFactor |
factor to calculate the start threshold | |
float | _minimumPulseHeight |
minimal value for the maximum adc value | |
int | _minimumPulseLength |
minimal length for a pulse in number of time bins | |
int | _saveNBinsBeforeStart |
of bins stored before the start threshold | |
int | _saveNBinsAfterEnd |
of bins stored after the end threshold | |
float | _noiseValuePedestalWidthFactor |
factor to calculate the noise cut | |
float | _maximumADCValueOverride |
maximum adc value, needed to determine if a pulse is maxed out | |
float | _readoutFrequencyOverride |
The readout frequency of every readout group (in MHz). More... | |
float | _pedestalValueOverride |
The pedestal value to be used for every hardware channel in every readout group. More... | |
float | _pedestalWidthOverride |
The pedestal width to be used for every hardware channel in every readout group. More... | |
bool | _isPedestalSubtractedOverride |
Sets, if the data is already pedestal subtracted in the read-out electronics. More... | |
int | _polarityOverride |
the polarity of all readout groups, overrides LCCD | |
int | _maxPlateauLength |
The maximum length of a plateau within a pulse in time bins. More... | |
PulseFinder * | _pulseFinder |
The instance of the pulse finder object. | |
This processor creates lcio::TrackerPulse objects from lcio::TrackerData.
It is the modular version of the PulseFinderProcessor in the sense that the functionality has been extracted into a separate class (PulseFinder) to allow unit testing. See the documentation of PulseFinder for the description of the algorithm.
Collection of TrackerData (can be zero supressed and/ or pedestal subtracted)
InputCollectionName:string | Name of the input TrackerData collection |
OutputTrackerPulseCollectionName:string | Name of the output TrackerPulse collection |
OutputTrackerDataCollectionName:string | Name of the output TrackerData collection |
WriteOutputToStorage:bool | Output collection will be written if set to true (which is the default) |
ForceSpectrumSave:bool | If true the ADC spectrum will be stored for all pulses, otherwise spectra are only stored if the quality word is not 0 (default: true) |
SwitchOffSplitting:bool | If true pulses will not be splitted, e.g. if double pulse is detected |
PulseStartPedestalWidthFactor:float | A pulse starts if the ADC value is this factor times width of the pedestal (default: : 7.0) |
PulseEndPedestalWidthFactor:float | The pulse ends if the ADC value drops below this factor timed the width of the pedestal (default: 3.0) |
MinimumPulseHeight:float | To accept a pulse its maximal ADC entry must exceed this cut (default: 12.0 ADC counts) |
MinumumPulseLength:int | To accept a pulse its length in time bins must be larger than this value without Start/End bins (default: 5) |
SaveNBinsBeforeStart:int | # bins saved before the start bin (exept there is another pulse, default:2) |
SaveNBinsAfterStart:int | # bins saved after the start bin (exept there is another pulse, default 8) |
NoiseValuePedestalWidthFactor:float | The noise (cut) value is calculated as this factor times pedestal width (default: 3.0) |
ElectronicsParameterObjectName:string | Name of the conditions object in which the parameters of the read out electronics is stored |
ElectronicsParametersCollectionName:string | Name of the conditions collection in which the parameters of the read out electronics is stored |
PedestalCollectionName:string | Name of the conditions collection in which the pedestals are stored |
TimeCalculationMode:int | Specifies the mode for time calculation. Valid values: INFLEXION_POINT = 0 (default) FIT_PARABOLA = 1 CENTRE_OF_GRAVITY = 2 FIRST_ABOVE_THRESHOLD = 3 AT_MAXIMUM = 4 CONSTANT_FRACTION = 5 GAMMA_FIT = 6 COG_ATMAX = 7 |
ChargeCalculationMode:int | Specifies the mode for charge calculation. Valid values: SUMQ = 0 (default) FIT_PARABOLA = 1 MAXQ = 2 |
PedestalValueOverride | OPTIONAL: Manually set the pedestal value (in ADC counts) |
PedestalWidthOverride | OPTIONAL: Manually set value of the pedestal width (in ADC coutns) |
MaximumADCValueOverride | OPTIONAL: Manually set value of the maximum adc value |
IsPedestalSubtractedOverride | OPTIONAL: Manually set whether the pedestal has been subtracted (true or false) |
SignalPolarityOverride | OPTIONAL: Manually set value of the electronics polarity (+-1) |
ReadoutFrequencyOverride | OPTIONAL: Manually set value of the readout frequency (in MHz) |
PlateauLengthCutOff | OPTIONAL: The maximum length of a plateau within a pulse in time bins. This used to cut off strange pulses that go into a plateau. |
As the interpretation of the data changes with the charge calculation mode (all charge or max charge) or the time calculation mode (different offsets), the parameters TimeCalculationMode
and ChargeCalculationMode
are stored as collection parameters of the pulse collection (in addition to being written to the run header together with all other processor parameters).
|
protected |
Sets, if the data is already pedestal subtracted in the read-out electronics.
This overrides any information provided by LCCD
|
protected |
The maximum length of a plateau within a pulse in time bins.
This used to cut off strange pulses that go into a plateau.
|
protected |
Set this flag to use the amplitude (maximum bin value) of the pulse as the charge.
set the persistency flag of the output collection
|
protected |
The pedestal value to be used for every hardware channel in every readout group.
This overrides any information provided by LCCD
|
protected |
The pedestal width to be used for every hardware channel in every readout group.
This overrides any information provided by LCCD
|
protected |
The readout frequency of every readout group (in MHz).
This overrides any information provided by LCCD