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

Find patterns in hit clouds. More...

#include <AtPRA.h>

Inheritance diagram for AtPATTERN::AtPRA:
Inheritance graph
[legend]
Collaboration diagram for AtPATTERN::AtPRA:
Collaboration graph
[legend]

Public Member Functions

virtual ~AtPRA ()=default
 
virtual std::vector< AtTrackGetTrackCand () const
 
void SetMaxHits (Int_t maxHits)
 
void SetMinHits (Int_t minHits)
 
void SetMeanDistance (Float_t meanDistance)
 
void SetkNN (Double_t knn)
 
void SetStdDevMulkNN (Double_t stdDevMul)
 
void SetkNNDist (Double_t dist)
 
void SetPrunning ()
 
void SetClusterRadius (Double_t clusterRadius)
 
void SetClusterDistance (Double_t clusterDistance)
 
virtual std::unique_ptr< AtPatternEventFindTracks (AtEvent &event)=0
 
void PruneTrack (AtTrack &track)
 
bool kNN (const std::vector< std::unique_ptr< AtHit >> &hits, AtHit &hit, int k)
 

Protected Member Functions

void SetTrackInitialParameters (AtTrack &track)
 Set initial parameters for HC. More...
 
template<typename T >
constexpr int GetSign (T num, std::true_type is_signed)
 
template<typename T >
constexpr int GetSign (T num, std::false_type is_signed)
 
template<typename T >
constexpr int GetSign (T num)
 

Protected Attributes

std::vector< AtTrackfTrackCand
 
AtDigiParfPar
 parameter container More...
 
Int_t fMaxHits {5000}
 
Int_t fMinHits {0}
 
Float_t fMeanDistance {1e9}
 
Int_t fKNN {5}
 
Double_t fStdDevMulkNN {0}
 
Double_t fkNNDist {10}
 
Bool_t kSetPrunning {false}
 
std::unique_ptr< AtTools::AtTrackTransformerfTrackTransformer {std::make_unique<AtTools::AtTrackTransformer>()}
 
Double_t fClusterRadius {0}
 
Double_t fClusterDistance {0}
 

Detailed Description

Find patterns in hit clouds.

Base class for finding tracks in a hit cloud. Right now, just supports HC.

Definition at line 32 of file AtPRA.h.

Constructor & Destructor Documentation

◆ ~AtPRA()

virtual AtPATTERN::AtPRA::~AtPRA ( )
virtualdefault

Member Function Documentation

◆ FindTracks()

virtual std::unique_ptr<AtPatternEvent> AtPATTERN::AtPRA::FindTracks ( AtEvent event)
pure virtual

◆ GetSign() [1/3]

template<typename T >
constexpr int AtPATTERN::AtPRA::GetSign ( num)
inlineconstexprprotected

Definition at line 94 of file AtPRA.h.

◆ GetSign() [2/3]

template<typename T >
constexpr int AtPATTERN::AtPRA::GetSign ( num,
std::false_type  is_signed 
)
inlineconstexprprotected

Definition at line 89 of file AtPRA.h.

◆ GetSign() [3/3]

template<typename T >
constexpr int AtPATTERN::AtPRA::GetSign ( num,
std::true_type  is_signed 
)
inlineconstexprprotected

Definition at line 84 of file AtPRA.h.

◆ GetTrackCand()

virtual std::vector<AtTrack> AtPATTERN::AtPRA::GetTrackCand ( ) const
inlinevirtual

Definition at line 55 of file AtPRA.h.

◆ kNN()

bool AtPATTERN::AtPRA::kNN ( const std::vector< std::unique_ptr< AtHit >> &  hits,
AtHit hit,
int  k 
)

Definition at line 228 of file AtPRA.cxx.

◆ PruneTrack()

void AtPATTERN::AtPRA::PruneTrack ( AtTrack track)

Definition at line 203 of file AtPRA.cxx.

◆ SetClusterDistance()

void AtPATTERN::AtPRA::SetClusterDistance ( Double_t  clusterDistance)
inline

Definition at line 66 of file AtPRA.h.

◆ SetClusterRadius()

void AtPATTERN::AtPRA::SetClusterRadius ( Double_t  clusterRadius)
inline

Definition at line 65 of file AtPRA.h.

◆ SetkNN()

void AtPATTERN::AtPRA::SetkNN ( Double_t  knn)
inline

Definition at line 61 of file AtPRA.h.

◆ SetkNNDist()

void AtPATTERN::AtPRA::SetkNNDist ( Double_t  dist)
inline

Definition at line 63 of file AtPRA.h.

◆ SetMaxHits()

void AtPATTERN::AtPRA::SetMaxHits ( Int_t  maxHits)
inline

Definition at line 58 of file AtPRA.h.

◆ SetMeanDistance()

void AtPATTERN::AtPRA::SetMeanDistance ( Float_t  meanDistance)
inline

Definition at line 60 of file AtPRA.h.

◆ SetMinHits()

void AtPATTERN::AtPRA::SetMinHits ( Int_t  minHits)
inline

Definition at line 59 of file AtPRA.h.

◆ SetPrunning()

void AtPATTERN::AtPRA::SetPrunning ( )
inline

Definition at line 64 of file AtPRA.h.

◆ SetStdDevMulkNN()

void AtPATTERN::AtPRA::SetStdDevMulkNN ( Double_t  stdDevMul)
inline

Definition at line 62 of file AtPRA.h.

◆ SetTrackInitialParameters()

void AtPATTERN::AtPRA::SetTrackInitialParameters ( AtTrack track)
protected

Set initial parameters for HC.

In track, sets GeoTheta, GeoPhi, GeoCenter, GeoRadius.

Definition at line 35 of file AtPRA.cxx.

Member Data Documentation

◆ fClusterDistance

Double_t AtPATTERN::AtPRA::fClusterDistance {0}
protected

Definition at line 49 of file AtPRA.h.

◆ fClusterRadius

Double_t AtPATTERN::AtPRA::fClusterRadius {0}
protected

Definition at line 48 of file AtPRA.h.

◆ fKNN

Int_t AtPATTERN::AtPRA::fKNN {5}
protected

Definition at line 41 of file AtPRA.h.

◆ fkNNDist

Double_t AtPATTERN::AtPRA::fkNNDist {10}
protected

Definition at line 43 of file AtPRA.h.

◆ fMaxHits

Int_t AtPATTERN::AtPRA::fMaxHits {5000}
protected

Definition at line 38 of file AtPRA.h.

◆ fMeanDistance

Float_t AtPATTERN::AtPRA::fMeanDistance {1e9}
protected

Definition at line 40 of file AtPRA.h.

◆ fMinHits

Int_t AtPATTERN::AtPRA::fMinHits {0}
protected

Definition at line 39 of file AtPRA.h.

◆ fPar

AtDigiPar* AtPATTERN::AtPRA::fPar
protected

parameter container

Definition at line 36 of file AtPRA.h.

◆ fStdDevMulkNN

Double_t AtPATTERN::AtPRA::fStdDevMulkNN {0}
protected

Definition at line 42 of file AtPRA.h.

◆ fTrackCand

std::vector<AtTrack> AtPATTERN::AtPRA::fTrackCand
protected

Definition at line 34 of file AtPRA.h.

◆ fTrackTransformer

std::unique_ptr<AtTools::AtTrackTransformer> AtPATTERN::AtPRA::fTrackTransformer {std::make_unique<AtTools::AtTrackTransformer>()}
protected

Definition at line 47 of file AtPRA.h.

◆ kSetPrunning

Bool_t AtPATTERN::AtPRA::kSetPrunning {false}
protected

Definition at line 45 of file AtPRA.h.


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