ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
Public Member Functions | Protected Member Functions | List of all members
ElectronicResponse::AtElectronicResponse Class Referenceabstract

Base class for describing the response of electronics to charge. More...

#include <AtElectronicResponse.h>

Inheritance diagram for ElectronicResponse::AtElectronicResponse:
Inheritance graph
[legend]

Public Member Functions

virtual ~AtElectronicResponse ()=default
 
double operator() (double time) const
 
double operator() (int padNum, double time) const
 

Protected Member Functions

virtual double GetResponse (double time) const =0
 
virtual double GetResponse (int padNum, double time) const =0
 

Detailed Description

Base class for describing the response of electronics to charge.

Tracks the response function as a function of time (in us). This is a FunctionObject that takes either the padnumber and time to get the response function, or just the time. Deriving classes that only implement padnumber and time should throw an exception if the time only version is called. Because these meet the interface of a callable object they can be passed directly to an AtPulseTask as the response.

There is no normalization intrinsic to this class because that is also true in the code as written. IMO there should be and I think the best way is to normalize the functions so the maximum value is always 1. That way in simulation or analysis you can swap response functions arbitrarily without also chaning the gain or calibration.

Definition at line 32 of file AtElectronicResponse.h.

Constructor & Destructor Documentation

◆ ~AtElectronicResponse()

virtual ElectronicResponse::AtElectronicResponse::~AtElectronicResponse ( )
virtualdefault

Member Function Documentation

◆ GetResponse() [1/2]

virtual double ElectronicResponse::AtElectronicResponse::GetResponse ( double  time) const
protectedpure virtual

◆ GetResponse() [2/2]

virtual double ElectronicResponse::AtElectronicResponse::GetResponse ( int  padNum,
double  time 
) const
protectedpure virtual

◆ operator()() [1/2]

double ElectronicResponse::AtElectronicResponse::operator() ( double  time) const
inline

Returns the response of the electronics to a delta-function of charge at t=0 after time (us).

Definition at line 42 of file AtElectronicResponse.h.

◆ operator()() [2/2]

double ElectronicResponse::AtElectronicResponse::operator() ( int  padNum,
double  time 
) const
inline

Returns the response of the electronics to a delta-function of charge at t=0 after time (us).

Definition at line 46 of file AtElectronicResponse.h.


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