Eletronic channel. More...
#include "mdet/Channel.h"
Classes | |
class | Discriminator |
Helper class encapsulating the discriminator response logic. More... | |
Public Member Functions | |
AddIdMessage (o) | |
double | ComputeSignalShift () const |
Computes a signal shift value according this Channel's characteristics (and, particularly, to the distribution of these values). More... | |
std::complex< double > | ComputeTransfer (double freq) const |
Computes the circuit transfer function at the given frequency. More... | |
const FrontEnd & | GetFrontEnd () const |
The shared common-to-all-channels electronic frontend of this channel. More... | |
int | GetId () const |
The id of this component. More... | |
const VManager::IndexMap & | GetIdsMap () const |
The id identifying this component within its detector hierarhy. More... | |
double | GetSignalShiftMean () const |
Retrieves the mean shift. More... | |
double | GetSignalShiftStdDev () const |
The standard deviation of the shift. More... | |
double | GetThreshold () const |
Discrimination threshold. More... | |
return o | str () |
Public Attributes | |
template<class Functor > | |
Discriminator | const |
Create a fresh discriminator. More... | |
Static Public Attributes | |
static const char *const | kComponentId = MHierarchyInfo::kComponentsIds[7] |
static const char *const | kComponentName = MHierarchyInfo::kComponentsNames[7] |
Protected Member Functions | |
template<typename T , template< typename > class P> | |
T & | GetData (P< T > &d, const std::string &p) const |
Common utility function for configuration. More... | |
template<typename T > | |
T & | GetData (T &d, const std::string &p) const |
Common utility function for configuration. More... | |
void | Register (utl::VValidated &v) |
Register the field so as to allow handling it. More... | |
s<< " ]";}DetectorComponent(int i, const VManager::IndexMap &parentMap):fId(i), fIdsMap(parentMap){Init();}DetectorComponent(const int i):fId(i){Init();}virtual ~DetectorComponent(){}virtual void Update(const bool invalidateData, const bool){for(FieldsContainer::iterator i=fFields.begin(), e=fFields.end();i!=e;++i)(*i) -> | SetValid (false) |
Protected Attributes | |
s<< "id="<< GetId()<< " [";for(It i=GetIdsMap().begin(), e=GetIdsMap().end();i!=e;++i) s<< " "<< i-> first<< "="<< i-> | second |
Private Member Functions | |
Channel (int cId, const det::VManager::IndexMap &parentMap, const FrontEnd &parent) | |
Constructs the electronic channel. More... | |
std::complex< double > | ComputeFrequencyFactor (double freq, double freqLimit) const |
Helper method to compute the factor (in the transfer function) that depends on frequency. More... | |
double | GetAbsoluteError () const |
Absolute error for root finding. More... | |
double | GetDCGain () const |
A dimensionless quantity signaling the DC gain. More... | |
double | GetDiscriminatorHiLevel () const |
Target voltage when the signal is higher than the threshold. More... | |
double | GetDiscriminatorLowLevel () const |
Target voltage when the signal is lower than the threshold. More... | |
double | GetFeedbackResistance () const |
The resistance within the feedback loop. More... | |
double | GetHighCutoffFrequency () const |
Hi end of frequency response. More... | |
double | GetInitialIntervalLength () const |
Lenght of the intervals (in time) in which divide the whole interval where roots are looked for. More... | |
double | GetInvertingInputResistance () const |
The resistance attached to the inverting input. More... | |
unsigned int | GetIterationsNumber () const |
Number of iterations allowed for the root finding procedures. More... | |
double | GetLowCutoffFrequency () const |
Low end of frequency response. More... | |
unsigned int | GetMaxNumberOfErrors () const |
Maximum number of errors admited without loggin when solving the equation threshold == input. More... | |
double | GetResponseTime () const |
Response time of the discriminator associated with the channel. More... | |
double | GetSlewRate () const |
Voltage change per time unit. More... | |
~Channel () | |
Destructor (!). More... | |
Private Attributes | |
utl::Validated< double > | fAbsoluteError |
utl::Validated< double > | fDCGain |
utl::Validated< double > | fDiscriminatorHiLevel |
utl::Validated< double > | fDiscriminatorLowLevel |
utl::Validated< double > | fFeedbackResistance |
const FrontEnd & | fFrontEnd |
utl::Validated< double > | fHighCutoffFrequency |
utl::Validated< double > | fInitialIntervalLength |
utl::Validated< double > | fInvertingInputResistance |
utl::Validated< int > | fIterationsNumber |
utl::Validated< double > | fLowCutoffFrequency |
utl::Validated< int > | fMaxNumberOfErrors |
utl::Validated< double > | fResponseTime |
utl::Validated< double > | fSignalShiftMean |
utl::Validated< double > | fSignalShiftStdDev |
utl::Validated< double > | fSlewRate |
utl::Validated< double > | fThreshold |
Friends | |
template<class T > | |
void | boost::checked_delete (T *) BOOST_NOEXCEPT |
Friendship for destruction. More... | |
struct | det::ComponentUpdater |
See mdet::Counter. More... | |
struct | det::ParentCreator |
Friendship to allow creation (or call it construction). More... | |
Eletronic channel.
This class represents the electronic channel that register the signal that comes out an individual pixel. This class includes both the digital and the analog part of the real device.
Definition at line 37 of file MDetector/Channel.h.
|
private |
Constructs the electronic channel.
cId | The identifier to be used. |
parentMap | The identifiers of the parent within the hierarchy. |
parent | The parent mdet::FrontEnd. |
A reference to the parent is kept in this class.
This method is kept private; creation of these objects is not meant to be performed by client code. See the related friendship declaration.
Definition at line 142 of file MDetector/Channel.cc.
|
inlineprivate |
Destructor (!).
Definition at line 500 of file MDetector/Channel.h.
|
inherited |
|
private |
Helper method to compute the factor (in the transfer function) that depends on frequency.
freq | The desired for frequency. |
freqLimit | The threshold limit frequency of the amplifier. |
Definition at line 310 of file MDetector/Channel.cc.
Referenced by ComputeTransfer().
double mdet::Channel::ComputeSignalShift | ( | ) | const |
Computes a signal shift value according this Channel's characteristics (and, particularly, to the distribution of these values).
The electronic channel due to several (tipically non-linear) effects such as charge movement, and semi-conductor responses, imposes a shift on its input signal that introduces a displacement on its output. This shift has to be positive (the electronic won't produce output beforehand its input!) tough the return value, being floating-point, has sign. The response of the channel is not constant and so this value may change from time to time, so this is modeled with a randomization. This method is what client code should call in order to query a value, the randomization procedure parametrization is kept private.
Definition at line 280 of file MDetector/Channel.cc.
References fwk::RandomEngineRegistry::eDetector, utl::RandomEngine::GetEngine(), GetSignalShiftMean(), and GetSignalShiftStdDev().
Referenced by MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::ProcessPulses(), and MdCounterSimulatorAG::MdCounterSimulator::ProcessPulses().
std::complex< double > mdet::Channel::ComputeTransfer | ( | double | freq | ) | const |
Computes the circuit transfer function at the given frequency.
Compute the (resistance equivalent unit) transfer function of the amplifying stage (likely to be an inverting configuration).
Definition at line 319 of file MDetector/Channel.cc.
References ComputeFrequencyFactor(), GetDCGain(), GetFeedbackResistance(), GetHighCutoffFrequency(), GetInvertingInputResistance(), and GetLowCutoffFrequency().
Referenced by MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::ProcessPulses(), and MdCounterSimulatorAG::MdCounterSimulator::ProcessPulses().
|
private |
Absolute error for root finding.
It's an absolute error in time, since the roots are those times where the input equals the threshold.
The root finding procedures have to do with the discrimination process, where the input signal needs to be compared with the threshold.
Definition at line 236 of file MDetector/Channel.cc.
References fAbsoluteError, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by mdet::Channel::Discriminator::Init().
|
inlineprotectedinherited |
Common utility function for configuration.
Retrieves data from the provided (via this class' template parameter) Manager instance and goes on with initialization.
d | An object of type P<T> wrapping the real of type T. |
p | Property name. The template class P must provide:
|
This is fullfilled by, for instance, utl::ShadowPtr as P and built-in types for T.
Definition at line 191 of file DetectorComponent.h.
References det::DetectorComponent< C, ManagerProvider >::d, and G4StationSimulatorOG::p.
Referenced by GetAbsoluteError(), mdet::BackEndSiPM::GetADCOffset(), mdet::BackEndSiPM::GetADCPar1(), mdet::BackEndSiPM::GetADCPar2(), mdet::BackEndSiPM::GetADCPar3(), mdet::BackEndSiPM::GetADCPar4(), mdet::BackEndSiPM::GetADCPar5(), mdet::BackEndSiPM::GetADCPar6(), mdet::BackEndSiPM::GetADCSaturationDown(), mdet::BackEndSiPM::GetADCSaturationUp(), mdet::Module::GetAreaKind(), mdet::Counter::GetAssociatedTankId(), mdet::Fiber::GetAttenuationAmplitudeA(), mdet::Fiber::GetAttenuationAmplitudeASiPM(), mdet::Fiber::GetAttenuationAmplitudeB(), mdet::Fiber::GetAttenuationAmplitudeBSiPM(), mdet::Fiber::GetAttenuationLengthA(), mdet::Fiber::GetAttenuationLengthASiPM(), mdet::Fiber::GetAttenuationLengthB(), mdet::Fiber::GetAttenuationLengthBSiPM(), mdet::Fiber::GetAttenuationReference(), mdet::Fiber::GetAttenuationReferenceEnergy(), mdet::Fiber::GetAttenuationReferenceThickness(), mdet::Module::GetBackgroundMuonsFlux(), mdet::FrontEndSiPM::GetBaseLineFluctuationHG(), mdet::FrontEndSiPM::GetBaseLineFluctuationLG(), GetDCGain(), mdet::Fiber::GetDecayTime(), mdet::Scintillator::GetDecayTime(), mdet::FrontEndSiPM::GetDelayBinaryADCMean(), mdet::FrontEndSiPM::GetDelayBinaryADCSigma(), mdet::FrontEndSiPM::GetDigitalBackGroundProbability(), mdet::FrontEndSiPM::GetDigitalBackGroundWidthMean(), mdet::FrontEndSiPM::GetDigitalBackGroundWidthStdDev(), mdet::ChannelSiPM::GetDiscriminatorGain(), mdet::ChannelSiPM::GetDiscriminatorHiLevel(), GetDiscriminatorHiLevel(), mdet::ChannelSiPM::GetDiscriminatorLowLevel(), GetDiscriminatorLowLevel(), mdet::ChannelSiPM::GetDiscriminatorThreshold(), mdet::ChannelSiPM::GetDiscriminatorTransitionTime(), mdet::Scintillator::GetEpsilon(), mdet::FrontEnd::GetFalseRangeHiThreshold(), mdet::FrontEndSiPM::GetFalseRangeHiThreshold(), mdet::ChannelSiPM::GetFastShaperGain(), mdet::ChannelSiPM::GetFastShaperTime(), GetFeedbackResistance(), mdet::BackEndSiPM::GetFirstAdderOffset(), mdet::BackEndSiPM::GetFirstAdderPar1(), mdet::BackEndSiPM::GetFirstAdderPar2(), mdet::BackEndSiPM::GetFirstAdderPar3(), mdet::BackEndSiPM::GetFirstAdderPar4(), mdet::BackEndSiPM::GetFirstAdderPar5(), mdet::BackEndSiPM::GetFirstAdderSaturationDown(), mdet::BackEndSiPM::GetFirstAdderSaturationUp(), mdet::Scintillator::GetHeight(), GetHighCutoffFrequency(), mdet::BackEndSiPM::GetHighGainAmplifierAdjustmentFactor(), mdet::BackEndSiPM::GetHighGainAmplifierOffset(), mdet::BackEndSiPM::GetHighGainAmplifierPar1(), mdet::BackEndSiPM::GetHighGainAmplifierPar2(), mdet::BackEndSiPM::GetHighGainAmplifierPar3(), mdet::BackEndSiPM::GetHighGainAmplifierPar4(), mdet::BackEndSiPM::GetHighGainAmplifierPar5(), mdet::BackEndSiPM::GetHighGainAmplifierPar6(), mdet::BackEndSiPM::GetHighGainAmplifierPar7(), mdet::BackEndSiPM::GetHighGainAmplifierPar8(), mdet::BackEndSiPM::GetHighGainAmplifierPar9(), mdet::BackEndSiPM::GetHighGainAmplifierSaturationDown(), mdet::BackEndSiPM::GetHighGainAmplifierSaturationUp(), GetInitialIntervalLength(), GetInvertingInputResistance(), GetIterationsNumber(), mdet::Scintillator::GetLength(), mdet::Scintillator::GetLocalSoilDensity(), GetLowCutoffFrequency(), mdet::BackEndSiPM::GetLowGainAmplifierAdjustmentFactor(), mdet::BackEndSiPM::GetLowGainAmplifierOffset(), mdet::BackEndSiPM::GetLowGainAmplifierPar1(), mdet::BackEndSiPM::GetLowGainAmplifierPar2(), mdet::BackEndSiPM::GetLowGainAmplifierPar3(), mdet::BackEndSiPM::GetLowGainAmplifierPar4(), mdet::BackEndSiPM::GetLowGainAmplifierPar5(), mdet::BackEndSiPM::GetLowGainAmplifierPar6(), mdet::BackEndSiPM::GetLowGainAmplifierPar7(), mdet::BackEndSiPM::GetLowGainAmplifierPar8(), mdet::BackEndSiPM::GetLowGainAmplifierPar9(), mdet::BackEndSiPM::GetLowGainAmplifierSaturationDown(), mdet::BackEndSiPM::GetLowGainAmplifierSaturationUp(), GetMaxNumberOfErrors(), mdet::FrontEnd::GetMeanSampleRatePeriod(), mdet::FrontEndSiPM::GetMeanSampleRatePeriod(), mdet::BackEndSiPM::GetNumberOfChannelsToGroup(), mdet::Fiber::GetNumericalAperture(), mdet::Fiber::GetOnManifoldLength(), mdet::Module::GetPhotoDetector(), mdet::FrontEndSiPM::GetPostT1BufferLength(), mdet::FrontEnd::GetPostT1BufferLength(), mdet::ChannelSiPM::GetPreAmplifierGain(), mdet::ChannelSiPM::GetPreAmplifierTime(), mdet::FrontEndSiPM::GetPreT1BufferLength(), mdet::FrontEnd::GetPreT1BufferLength(), mdet::SiPM::GetPulseAmplitude1Mean(), mdet::SiPM::GetPulseAmplitude1StdDev(), mdet::SiPM::GetPulseAmplitude2Mean(), mdet::SiPM::GetPulseAmplitude2StdDev(), mdet::SiPM::GetPulseAmplitude3Mean(), mdet::SiPM::GetPulseAmplitude3StdDev(), mdet::Pixel::GetPulseAmplitudeMean(), mdet::Pixel::GetPulseAmplitudeStdDev(), mdet::Pixel::GetPulseChargeMean(), mdet::Pixel::GetPulseChargeStdDev(), mdet::Pixel::GetPulseParametersCorrelation(), mdet::Pixel::GetPulseParametrization(), mdet::SiPM::GetPulseRelevantWidth(), mdet::Pixel::GetPulseRelevantWidth(), mdet::Pixel::GetPulseStdDevMean(), mdet::Pixel::GetPulseStdDevStdDev(), mdet::SiPM::GetPulseTime1Mean(), mdet::SiPM::GetPulseTime1StdDev(), mdet::SiPM::GetPulseTime2Mean(), mdet::SiPM::GetPulseTime2StdDev(), mdet::SiPM::GetPulseTime3Mean(), mdet::SiPM::GetPulseTime3StdDev(), mdet::SiPM::GetPulseTime4Mean(), mdet::SiPM::GetPulseTime4StdDev(), mdet::Fiber::GetRadius(), mdet::Fiber::GetRefractionIndex(), GetResponseTime(), mdet::FrontEnd::GetSampleRatePeriodJitter(), mdet::FrontEndSiPM::GetSampleTimeADC(), mdet::BackEndSiPM::GetSecondAdderOffset(), mdet::BackEndSiPM::GetSecondAdderPar1(), mdet::BackEndSiPM::GetSecondAdderPar2(), mdet::BackEndSiPM::GetSecondAdderPar3(), mdet::BackEndSiPM::GetSecondAdderPar4(), mdet::BackEndSiPM::GetSecondAdderPar5(), mdet::BackEndSiPM::GetSecondAdderSaturationDown(), mdet::BackEndSiPM::GetSecondAdderSaturationUp(), GetSignalShiftMean(), GetSignalShiftStdDev(), mdet::BackEndSiPM::GetSimplifiedGainHG(), mdet::BackEndSiPM::GetSimplifiedGainLG(), mdet::BackEndSiPM::GetSimplifiedTime(), GetSlewRate(), mdet::FrontEndSiPM::GetStepADC(), GetThreshold(), mdet::FrontEnd::GetTrueRangeLowThreshold(), mdet::FrontEndSiPM::GetTrueRangeLowThreshold(), and mdet::Scintillator::GetWidth().
|
inlineprotectedinherited |
Common utility function for configuration.
Overload without wrapping parameter: directly gets the datum as parameter. Typically invoked with T equal to a primitive type (int, double, so on).
Definition at line 232 of file DetectorComponent.h.
|
private |
A dimensionless quantity signaling the DC gain.
Definition at line 179 of file MDetector/Channel.cc.
References fDCGain, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeTransfer().
|
private |
Target voltage when the signal is higher than the threshold.
Definition at line 215 of file MDetector/Channel.cc.
References fDiscriminatorHiLevel, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by mdet::Channel::Discriminator::ApplySaturation(), and mdet::Channel::Discriminator::ComputeOutput().
|
private |
Target voltage when the signal is lower than the threshold.
Definition at line 208 of file MDetector/Channel.cc.
References fDiscriminatorLowLevel, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by mdet::Channel::Discriminator::ApplySaturation(), mdet::Channel::Discriminator::ComputeOutput(), and mdet::Channel::Discriminator::Init().
|
private |
The resistance within the feedback loop.
Definition at line 172 of file MDetector/Channel.cc.
References fFeedbackResistance, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeTransfer().
The shared common-to-all-channels electronic frontend of this channel.
Definition at line 269 of file MDetector/Channel.h.
References fFrontEnd.
Referenced by MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::ProcessPulses(), and MdCounterSimulatorAG::MdCounterSimulator::ProcessPulses().
|
private |
Hi end of frequency response.
Definition at line 194 of file MDetector/Channel.cc.
References fHighCutoffFrequency, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeTransfer().
|
inlineinherited |
The id of this component.
Definition at line 105 of file DetectorComponent.h.
References det::DetectorComponent< C, ManagerProvider >::fId.
Referenced by G4StationSimulatorOG::G4StationConstruction::AssembleUMD(), MuonCounterViewerAG::ScintBuilder::Box(), MdLDFFinderAG::Likelihood2::CalculateCandidateLikelihood(), MdLDFFinderAG::Likelihood3::CalculateCandidateLikelihood(), MdLDFFinderAG::Likelihood::CalculateCandidateLikelihood(), MdLDFFinderAG::MdLDFFinder::CalculateChi2(), MdLDFFinderAG::MdLDFFinder::FillModulesShowerPlaneDistances(), EdepSimulatorAG::PrimaryGenerator::GeneratePrimaries(), mdet::PMT::GetCrossTalk(), det::DetectorComponent< C, ManagerProvider >::Init(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::OptoElectronics(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::PlotChannel(), MdCounterSimulatorAG::MdCounterSimulator::PlotChannel(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::PlotIntegrator(), MdCounterSimulatorAG::MdCounterSimulator::PlotIntegrator(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::ProcessPulses(), MdCounterSimulatorAG::MdCounterSimulator::ProcessPulses(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::ProcessPulsesIntegrator(), MdCounterSimulatorAG::MdCounterSimulator::ProcessPulsesIntegrator(), MdEventSelectorAG::MdEventSelector::RejectTimeOutliers(), EdepSimulatorAG::EdepSimulator::Run(), MuonCounterViewerAG::MuonCounterViewer::Run(), MdCounterSimulatorAG::MdCounterSimulator::RunFromMEventScintillatorSimulated(), MdLDFFinderAG::MdLDFFinder::SetLdfResiduals(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::SimulateElectronics(), MdCounterSimulatorAG::MdCounterSimulator::SimulateElectronics(), and MdCounterSimulatorAG::MdCounterSimulator::SimulatePulses().
|
inlineinherited |
The id identifying this component within its detector hierarhy.
Definition at line 111 of file DetectorComponent.h.
References det::DetectorComponent< C, ManagerProvider >::fIdsMap.
Referenced by mdet::Counter::GetModules(), mdet::Module::Module(), mdet::PMT::PMT(), mdet::SiPMArray::Update(), mdet::FrontEnd::Update(), mdet::FrontEndSiPM::Update(), mdet::PMT::Update(), and mdet::Module::Update().
|
private |
Lenght of the intervals (in time) in which divide the whole interval where roots are looked for.
This quantity is defined to be positive.
Definition at line 243 of file MDetector/Channel.cc.
References fInitialIntervalLength, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by mdet::Channel::Discriminator::Init().
|
private |
The resistance attached to the inverting input.
Definition at line 165 of file MDetector/Channel.cc.
References fInvertingInputResistance, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeTransfer().
|
private |
Number of iterations allowed for the root finding procedures.
Definition at line 250 of file MDetector/Channel.cc.
References fIterationsNumber, and det::DetectorComponent< C, ManagerProvider >::GetData().
|
private |
Low end of frequency response.
Definition at line 187 of file MDetector/Channel.cc.
References fLowCutoffFrequency, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeTransfer().
|
private |
Maximum number of errors admited without loggin when solving the equation threshold == input.
Definition at line 257 of file MDetector/Channel.cc.
References fMaxNumberOfErrors, and det::DetectorComponent< C, ManagerProvider >::GetData().
|
private |
Response time of the discriminator associated with the channel.
Definition at line 229 of file MDetector/Channel.cc.
References fResponseTime, and det::DetectorComponent< C, ManagerProvider >::GetData().
double mdet::Channel::GetSignalShiftMean | ( | ) | const |
Retrieves the mean shift.
This method is provided as public for completeness, so as to allow the users to know he mean value.
For computation of individual values the "Compute" method has to be used.
Internally is also used to feed the particular distribution that these values follow; but at last the concept of mean value exceeds a particular distribution and has a general meaning.
Definition at line 265 of file MDetector/Channel.cc.
References fSignalShiftMean, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeSignalShift().
double mdet::Channel::GetSignalShiftStdDev | ( | ) | const |
The standard deviation of the shift.
Definition at line 272 of file MDetector/Channel.cc.
References fSignalShiftStdDev, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by ComputeSignalShift().
|
private |
Voltage change per time unit.
This characterizes the amount of time to transition between states.
Definition at line 222 of file MDetector/Channel.cc.
References fSlewRate, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by mdet::Channel::Discriminator::ComputeOutput().
double mdet::Channel::GetThreshold | ( | ) | const |
Discrimination threshold.
This property is the only one exposed (from those that have to do with the discrimination) since it's meaningful for client code.
If, for instance, in the future there's such a thing like that in the real device the effective threshold changes a little, say, after each time the signal crosses it then some more properties would be needed. Nevertheless this GetThreshold will remain as the mean/desired threshold.
Given this, client code should only consult this property in regards to informative concerns, like plotting a constant desired threshold level. For computation matters, the interface provided by mdet::Channel::Discriminator should be provided.
Definition at line 201 of file MDetector/Channel.cc.
References fThreshold, and det::DetectorComponent< C, ManagerProvider >::GetData().
Referenced by mdet::Channel::Discriminator::Init(), mdet::Channel::Discriminator::OverThreshold(), MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::ProcessPulses(), and MdCounterSimulatorAG::MdCounterSimulator::ProcessPulses().
|
inlineprotectedinherited |
Register the field so as to allow handling it.
Definition at line 298 of file DetectorComponent.h.
References det::DetectorComponent< C, ManagerProvider >::fFields.
Referenced by mdet::ChannelSiPM::ChannelSiPM(), mdet::Counter::Counter(), mdet::Module::Module(), and mdet::Scintillator::Scintillator().
|
protectedinherited |
|
inherited |
|
friend |
Friendship for destruction.
Depends on det::ComponentGroup innards.
|
friend |
See mdet::Counter.
Definition at line 513 of file MDetector/Channel.h.
|
friend |
Friendship to allow creation (or call it construction).
Definition at line 504 of file MDetector/Channel.h.
Discriminator mdet::Channel::const |
Create a fresh discriminator.
inputPulse | An functor object providing operator()(double time) as a way to evaluate the incoming pulse to be discrimined. |
beginTime | The starting time where the response is desired. |
endTime | The final time where the response is desired. |
Definition at line 356 of file MDetector/Channel.h.
|
mutableprivate |
Definition at line 538 of file MDetector/Channel.h.
Referenced by GetAbsoluteError().
|
mutableprivate |
Definition at line 522 of file MDetector/Channel.h.
Referenced by GetDCGain().
|
mutableprivate |
Definition at line 534 of file MDetector/Channel.h.
Referenced by GetDiscriminatorHiLevel().
|
mutableprivate |
Definition at line 532 of file MDetector/Channel.h.
Referenced by GetDiscriminatorLowLevel().
|
mutableprivate |
Definition at line 520 of file MDetector/Channel.h.
Referenced by GetFeedbackResistance().
Definition at line 552 of file MDetector/Channel.h.
Referenced by GetFrontEnd().
|
mutableprivate |
Definition at line 526 of file MDetector/Channel.h.
Referenced by GetHighCutoffFrequency().
|
mutableprivate |
Definition at line 540 of file MDetector/Channel.h.
Referenced by GetInitialIntervalLength().
|
mutableprivate |
Definition at line 518 of file MDetector/Channel.h.
Referenced by GetInvertingInputResistance().
|
mutableprivate |
Definition at line 543 of file MDetector/Channel.h.
Referenced by GetIterationsNumber().
|
mutableprivate |
Definition at line 524 of file MDetector/Channel.h.
Referenced by GetLowCutoffFrequency().
|
mutableprivate |
Definition at line 546 of file MDetector/Channel.h.
Referenced by GetMaxNumberOfErrors().
|
mutableprivate |
Definition at line 530 of file MDetector/Channel.h.
Referenced by GetResponseTime().
|
mutableprivate |
Definition at line 548 of file MDetector/Channel.h.
Referenced by GetSignalShiftMean().
|
mutableprivate |
Definition at line 550 of file MDetector/Channel.h.
Referenced by GetSignalShiftStdDev().
|
mutableprivate |
Definition at line 536 of file MDetector/Channel.h.
Referenced by GetSlewRate().
|
mutableprivate |
Definition at line 528 of file MDetector/Channel.h.
Referenced by GetThreshold().
|
static |
Definition at line 265 of file MDetector/Channel.h.
|
static |
Definition at line 263 of file MDetector/Channel.h.
|
protectedinherited |
Definition at line 257 of file DetectorComponent.h.
Referenced by MdOptoElectronicSimulatorAG::MdOptoElectronicSimulator::SimulateElectronics(), and MdCounterSimulatorAG::MdCounterSimulator::SimulateElectronics().