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

#include <AtPSA.h>

Inheritance diagram for AtPSA:
Inheritance graph
[legend]

Public Member Functions

 AtPSA ()=default
 
virtual ~AtPSA ()=default
 
virtual void Init ()
 
void SetThreshold (Int_t threshold)
 
void SetThresholdLow (Int_t thresholdlow)
 
int GetThreshold ()
 
int GetThresholdLow ()
 
void SetSimulatedEvent (TClonesArray *MCSimPointArray)
 
AtEvent Analyze (AtRawEvent &rawEvent)
 
virtual void Analyze (AtRawEvent *rawEvent, AtEvent *event)
 
virtual HitVector AnalyzePad (AtPad *pad)=0
 
virtual std::unique_ptr< AtPSAClone ()=0
 

Protected Types

using HitVector = std::vector< std::unique_ptr< AtHit > >
 

Protected Member Functions

void TrackMCPoints (std::multimap< Int_t, std::size_t > &map, AtHit &hit)
 
Double_t CalculateZ (Double_t peakIdx)
 Calculate z position in mm using the peak index. More...
 
Double_t CalculateZGeo (Double_t peakIdx)
 
Double_t getThreshold (int padSize=-1)
 
virtual double getZhitVariance (double zLoc, double zLocVar) const
 
virtual std::pair< double, double > getXYhitVariance () const
 

Protected Attributes

TClonesArray * fMCSimPointArray {}
 
Bool_t fUsingLowThreshold {false}
 
Double_t fBField {}
 
Double_t fEField {}
 
Int_t fTB0 {}
 
Int_t fNumTbs {512}
 
Int_t fTBTime {}
 
Int_t fEntTB {}
 
Double_t fDriftVelocity {}
 
Double_t fZk {}
 

Detailed Description

Definition at line 27 of file AtPSA.h.

Member Typedef Documentation

◆ HitVector

using AtPSA::HitVector = std::vector<std::unique_ptr<AtHit> >
protected

Definition at line 50 of file AtPSA.h.

Constructor & Destructor Documentation

◆ AtPSA()

AtPSA::AtPSA ( )
default

◆ ~AtPSA()

virtual AtPSA::~AtPSA ( )
virtualdefault

Member Function Documentation

◆ Analyze() [1/2]

AtEvent AtPSA::Analyze ( AtRawEvent rawEvent)

Definition at line 116 of file AtPSA.cxx.

◆ Analyze() [2/2]

void AtPSA::Analyze ( AtRawEvent rawEvent,
AtEvent event 
)
virtual

Analyzes every pad in event, and add the hits to AtEvent. Called by AtPSATask.

Reimplemented in AtPSASimple2.

Definition at line 127 of file AtPSA.cxx.

◆ AnalyzePad()

virtual HitVector AtPSA::AnalyzePad ( AtPad pad)
pure virtual

◆ CalculateZ()

Double_t AtPSA::CalculateZ ( Double_t  peakIdx)
protected

Calculate z position in mm using the peak index.

Definition at line 85 of file AtPSA.cxx.

◆ CalculateZGeo()

Double_t AtPSA::CalculateZGeo ( Double_t  peakIdx)
protected

Definition at line 90 of file AtPSA.cxx.

◆ Clone()

virtual std::unique_ptr<AtPSA> AtPSA::Clone ( )
pure virtual

◆ GetThreshold()

int AtPSA::GetThreshold ( )
inline

Definition at line 60 of file AtPSA.h.

◆ getThreshold()

Double_t AtPSA::getThreshold ( int  padSize = -1)
protected

Definition at line 179 of file AtPSA.cxx.

◆ GetThresholdLow()

int AtPSA::GetThresholdLow ( )
inline

Definition at line 61 of file AtPSA.h.

◆ getXYhitVariance()

std::pair< double, double > AtPSA::getXYhitVariance ( ) const
protectedvirtual

Definition at line 200 of file AtPSA.cxx.

◆ getZhitVariance()

double AtPSA::getZhitVariance ( double  zLoc,
double  zLocVar 
) const
protectedvirtual

Returns a vector populated with the variance of the hit according the the diffusion coefficients in the parameter file.

Parameters
[in]zLocLocation of hit in TB
[in]zLocVarVariance of hit in TB^2
Returns
variance of hit location in mm^2
Todo:
Implement the function so it doesn't return all zeros...

Reimplemented in AtPSADeconv.

Definition at line 195 of file AtPSA.cxx.

◆ Init()

void AtPSA::Init ( )
virtual

Reimplemented in AtPSAComposite, and AtPSADeconvFit.

Definition at line 30 of file AtPSA.cxx.

◆ SetSimulatedEvent()

void AtPSA::SetSimulatedEvent ( TClonesArray *  MCSimPointArray)

Definition at line 67 of file AtPSA.cxx.

◆ SetThreshold()

void AtPSA::SetThreshold ( Int_t  threshold)

Definition at line 72 of file AtPSA.cxx.

◆ SetThresholdLow()

void AtPSA::SetThresholdLow ( Int_t  thresholdlow)

Definition at line 79 of file AtPSA.cxx.

◆ TrackMCPoints()

void AtPSA::TrackMCPoints ( std::multimap< Int_t, std::size_t > &  map,
AtHit hit 
)
protected

Definition at line 95 of file AtPSA.cxx.

Member Data Documentation

◆ fBField

Double_t AtPSA::fBField {}
protected

Definition at line 39 of file AtPSA.h.

◆ fDriftVelocity

Double_t AtPSA::fDriftVelocity {}
protected

Definition at line 47 of file AtPSA.h.

◆ fEField

Double_t AtPSA::fEField {}
protected

Definition at line 40 of file AtPSA.h.

◆ fEntTB

Int_t AtPSA::fEntTB {}
protected

Definition at line 46 of file AtPSA.h.

◆ fMCSimPointArray

TClonesArray* AtPSA::fMCSimPointArray {}
protected

Definition at line 34 of file AtPSA.h.

◆ fNumTbs

Int_t AtPSA::fNumTbs {512}
protected

Definition at line 44 of file AtPSA.h.

◆ fTB0

Int_t AtPSA::fTB0 {}
protected

Definition at line 41 of file AtPSA.h.

◆ fTBTime

Int_t AtPSA::fTBTime {}
protected

Definition at line 45 of file AtPSA.h.

◆ fUsingLowThreshold

Bool_t AtPSA::fUsingLowThreshold {false}
protected

Definition at line 36 of file AtPSA.h.

◆ fZk

Double_t AtPSA::fZk {}
protected

Definition at line 48 of file AtPSA.h.


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