ATTPCROOT
0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
|
Go to the documentation of this file. 1 #ifndef AtPULSELINETASK_H
2 #define AtPULSELINETASK_H
11 #include "Math/Vector3Dfwd.h"
19 uint fNumIntegrationPoints = 1000;
20 ushort fNumSigmaToIntegrateZ = 3;
22 std::map<int, float> fXYintegrationMap;
32 virtual std::shared_ptr<AtPulse>
Clone()
const override {
return std::make_shared<AtPulseLine>(*
this); }
void SetNumIntegrationPoints(uint numPoints)
AtPulseLine(AtMapPtr map, ResponseFunc response=nullptr)
xyIntegrationMap[padNum] = % of e- in event here
ROOT::Math::XYZVector XYZVector
int throwRandomAndGetPadAfterDiffusion(const ROOT::Math::XYZVector &loc, double diffusionSigma)
AtPulseLine(const AtPulseLine &other)=default
std::function< double(int, double)> ResponseFunc
Function (or callable object) to use as the response function. Parameters are padNum and time (us)
int integrateTimebuckets(std::vector< double > &zIntegral, AtSimulatedLine *line)
ushort SetNumSigmaToIntegrateZ()
virtual bool AssignElectronsToPad(AtSimulatedPoint *line) override
void SetNumSigmaToIntegrateZ(ushort zScore)
std::shared_ptr< AtMap > AtMapPtr
uint GetNumIntegrationPoints()
void generateIntegrationMap(AtSimulatedLine &line)
virtual std::shared_ptr< AtPulse > Clone() const override