ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
Public Member Functions | List of all members
AtPatterns::AtPatternRay Class Reference

Describes a linear track with an end point. More...

#include <AtPatternRay.h>

Inheritance diagram for AtPatterns::AtPatternRay:
Inheritance graph
[legend]
Collaboration diagram for AtPatterns::AtPatternRay:
Collaboration graph
[legend]

Public Member Functions

 AtPatternRay ()
 
void DefinePattern (XYZPoint point, XYZVector direction)
 
virtual void DefinePattern (const std::vector< XYZPoint > &points) override
 Define based on points. More...
 
virtual Double_t DistanceToPattern (const XYZPoint &point) const override
 Closest distance to pattern. More...
 
virtual XYZPoint ClosestPointOnPattern (const XYZPoint &point) const override
 Closest point on pattern. More...
 
virtual XYZPoint GetPointAt (double z) const override
 Get point on line at z. More...
 
virtual TEveElement * GetEveElement () const override
 Get visual representation of pattern. More...
 
virtual std::unique_ptr< AtPatternClone () const override
 
- Public Member Functions inherited from AtPatterns::AtPatternLine
 AtPatternLine ()
 
XYZPoint GetPoint () const
 
XYZVector GetDirection () const
 
TEveLine * GetEveLine (Double_t rMax=250) const
 
- Public Member Functions inherited from AtPatterns::AtPattern
 AtPattern (Int_t numPoints=0)
 
 AtPattern (const AtPattern &)=default
 
 AtPattern (AtPattern &&)=default
 
virtual ~AtPattern ()=default
 
Double_t FitPattern (const std::vector< AtHit > &pointsToFit, Double_t qThreshold=-1)
 Fit the pattern. More...
 
Double_t FitPattern (const std::vector< const AtHit * > &pointsToFit, Double_t qThreshold=-1)
 
Double_t FitPattern (const std::vector< XYZPoint > &pointsToFit)
 Fit the pattern shape. More...
 
virtual void DefinePattern (std::vector< double > par)
 Define based on parameters. More...
 
TEveLine * GetEveLine (double tMin, double tMax, int n) const
 Get visual representation of pattern. More...
 
Int_t GetNumPoints () const
 Number of points to define the pattern. More...
 
Double_t GetChi2 () const
 
Int_t GetNFree () const
 
virtual std::vector< double > GetPatternPar () const
 Get list or parameters that describe the pattern. More...
 
Double_t GetTotCharge () const
 
void SetPatternPar (std::vector< double > par)
 
void SetChi2 (double chi2)
 

Additional Inherited Members

- Public Types inherited from AtPatterns::AtPatternLine
using XYZPoint = ROOT::Math::XYZPoint
 
using XYZVector = ROOT::Math::XYZVector
 
- Public Types inherited from AtPatterns::AtPattern
using XYZPoint = ROOT::Math::XYZPoint
 
- Protected Types inherited from AtPatterns::AtPattern
using TEveLineVec = std::vector< std::unique_ptr< TEveLine > >
 
- Protected Member Functions inherited from AtPatterns::AtPatternLine
std::vector< Double_t > lineIntersecR (Double_t rMax, Double_t tMin, Double_t tMax) const
 
virtual void FitPattern (const std::vector< XYZPoint > &points, const std::vector< double > &charge) override
 
double parameterAtPoint (const XYZPoint &point) const
 Get the parameter closes to compPoint. More...
 
- Protected Attributes inherited from AtPatterns::AtPattern
std::vector< Double_t > fPatternPar
 
Double_t fChi2 {NAN}
 
Int_t fNFree {0}
 
const Int_t fNumPoints
 
Double_t fTotCharge {0}
 

Detailed Description

Describes a linear track with an end point.

Definition at line 27 of file AtPatternRay.h.

Constructor & Destructor Documentation

◆ AtPatternRay()

AtPatternRay::AtPatternRay ( )

Definition at line 17 of file AtPatternRay.cxx.

Member Function Documentation

◆ Clone()

virtual std::unique_ptr<AtPattern> AtPatterns::AtPatternRay::Clone ( ) const
inlineoverridevirtual

Reimplemented from AtPatterns::AtPatternLine.

Definition at line 37 of file AtPatternRay.h.

◆ ClosestPointOnPattern()

AtPatternRay::XYZPoint AtPatternRay::ClosestPointOnPattern ( const XYZPoint point) const
overridevirtual

Closest point on pattern.

Parameters
[in]pointPoint to get the closest point on the pattern.
Returns
Closest point on pattern

Reimplemented from AtPatterns::AtPatternLine.

Definition at line 24 of file AtPatternRay.cxx.

◆ DefinePattern() [1/2]

virtual void AtPatterns::AtPatternRay::DefinePattern ( const std::vector< XYZPoint > &  points)
inlineoverridevirtual

Define based on points.

Will set-up the pattern using the vector of XYZPoints. Assumes the size of points is equal to fNumPoints

Parameters
[in]points3D points to use when defining the pattern

Reimplemented from AtPatterns::AtPatternLine.

Definition at line 32 of file AtPatternRay.h.

◆ DefinePattern() [2/2]

void AtPatternRay::DefinePattern ( XYZPoint  point,
XYZVector  direction 
)

Definition at line 43 of file AtPatternRay.cxx.

◆ DistanceToPattern()

Double_t AtPatternRay::DistanceToPattern ( const XYZPoint point) const
overridevirtual

Closest distance to pattern.

Parameters
[in]pointPoint to get the distance from.
Returns
distance from point to pattern in mm.

Reimplemented from AtPatterns::AtPatternLine.

Definition at line 30 of file AtPatternRay.cxx.

◆ GetEveElement()

TEveElement * AtPatternRay::GetEveElement ( ) const
overridevirtual

Get visual representation of pattern.

Calls GetEveLine(double tMin, double tMax, int n) with reasonable defaults for the shape

Reimplemented from AtPatterns::AtPatternLine.

Definition at line 19 of file AtPatternRay.cxx.

◆ GetPointAt()

AtPatternRay::XYZPoint AtPatternRay::GetPointAt ( double  z) const
overridevirtual

Get point on line at z.

Get point on line at z. If the line is parallel to Z, then return then the parameter passed has not defined physical interpretation

Parameters
[in]zLocation of point at z [mm]

Reimplemented from AtPatterns::AtPatternLine.

Definition at line 36 of file AtPatternRay.cxx.


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