CbmRoot
Loading...
Searching...
No Matches
cbm::algo::ca::TripletConstructorSW Class Reference

#include <CaTripletConstructorSW.h>

Collaboration diagram for cbm::algo::ca::TripletConstructorSW:
[legend]

Public Member Functions

 TripletConstructorSW (const ca::Framework &framework, const ca::Parameters< fvec > &pars, WindowData &wData, const fscal mass, const ca::TrackingMode &mode)
 ---— Constructors and destructor ---—
 
 TripletConstructorSW (const TripletConstructorSW &)=delete
 Copy constructor.
 
 TripletConstructorSW (TripletConstructorSW &&)=delete
 Move constructor.
 
TripletConstructorSWoperator= (const TripletConstructorSW &)=delete
 Copy assignment operator.
 
TripletConstructorSWoperator= (TripletConstructorSW &&)=delete
 Move assignment operator.
 
 ~TripletConstructorSW ()=default
 Destructor.
 
void CreateTripletsForHit (Vector< ca::Triplet > &tripletsOut, int istal, int istam, int istar, ca::HitIndex_t ihl)
 ---— FUNCTIONAL PART ---—
 

Private Types

typedef Vector< ca::HitIndex_tDoublet_t
 
typedef std::tuple< Vector< ca::HitIndex_t >, Vector< ca::HitIndex_t >, Vector< fscal > > Triplet_t
 

Private Member Functions

bool InitStations (int istal, int istam, int istar)
 
void SuppressDoubletClones ()
 Find the doublets. Reformat data in the portion of doublets.
 
void FindTripletHits ()
 
void FitTriplets (Vector< ca::Triplet > &tripletsOut)
 Fit triplets on station.
 
void CollectHits (Vector< ca::HitIndex_t > &collectedHits, const SearchWindowMap::SearchWindow &area2D, fscal time, fscal timeRange, const int iSta, const fscal areaExtension, const int maxNhits, const McMatch &mc)
 
int FindClosestHitWithMc (const SearchWindowMap::SearchWindow &area2D, const int iSta, const McMatch &mc)
 

Private Attributes

const ca::FrameworkfFramework
 Reference to the Framework object.
 
const Parameters< fvec > & fParameters
 Object of Framework parameters class.
 
const cbm::algo::kf::Setup< fvec > & fSetup
 Reference to the setup.
 
const cbm::algo::kf::Field< fvec > & fField
 Reference to field.
 
const SearchWindowMapContainerfSwMaps
 Search windows.
 
WindowDatafrWData
 
fscal fDefaultMass {constants::phys::MuonMass}
 mass of the propagated particle [GeV/c2]
 
ca::TrackingMode fTrackingMode
 
bool fIsTargetField {false}
 is the magnetic field present at the target
 
int fNfieldStations {0}
 
int fIstaL {-1}
 left station index
 
int fIstaM {-1}
 middle station index
 
int fIstaR {-1}
 right station index
 
const kf::ActiveLayer< fvec > * fStaL {nullptr}
 left station
 
const kf::ActiveLayer< fvec > * fStaM {nullptr}
 mid station
 
const kf::ActiveLayer< fvec > * fStaR {nullptr}
 right station
 
ca::HitIndex_t fIhitL
 index of the left hit in fAlgo->fWindowHits
 
kf::FieldRegion< fvecfFldL
 
Triplet_t fTripletData
 
Vector< ca::HitIndex_tfDoubletData
 

Static Private Attributes

static constexpr bool fDebugDublets = false
 
static constexpr bool fDebugTriplets = false
 
static constexpr bool fDebugCollectHits = false
 

Detailed Description

Construction of triplets for the CA tracker

Definition at line 27 of file CaTripletConstructorSW.h.

Member Typedef Documentation

◆ Doublet_t

◆ Triplet_t

Constructor & Destructor Documentation

◆ TripletConstructorSW() [1/3]

TripletConstructorSW::TripletConstructorSW ( const ca::Framework & framework,
const ca::Parameters< fvec > & pars,
WindowData & wData,
const fscal mass,
const ca::TrackingMode & mode )

---— Constructors and destructor ---—

Constructor

Parameters
nThreadsNumber of threads for multi-threaded mode

Definition at line 25 of file CaTripletConstructorSW.cxx.

References cbm::algo::ca::utils::Debugger::AddNtuple(), fDebugDublets, fDebugTriplets, fDefaultMass, fField, fFramework, fIsTargetField, fNfieldStations, fParameters, frWData, fSetup, fSwMaps, fTrackingMode, and cbm::algo::ca::utils::Debugger::Instance().

Referenced by operator=(), operator=(), TripletConstructorSW(), and TripletConstructorSW().

◆ TripletConstructorSW() [2/3]

cbm::algo::ca::TripletConstructorSW::TripletConstructorSW ( const TripletConstructorSW & )
delete

Copy constructor.

References TripletConstructorSW().

◆ TripletConstructorSW() [3/3]

cbm::algo::ca::TripletConstructorSW::TripletConstructorSW ( TripletConstructorSW && )
delete

Move constructor.

References TripletConstructorSW().

◆ ~TripletConstructorSW()

cbm::algo::ca::TripletConstructorSW::~TripletConstructorSW ( )
default

Destructor.

Member Function Documentation

◆ CollectHits()

◆ CreateTripletsForHit()

◆ FindClosestHitWithMc()

◆ FindTripletHits()

◆ FitTriplets()

◆ InitStations()

bool TripletConstructorSW::InitStations ( int istal,
int istam,
int istar )
private

Definition at line 64 of file CaTripletConstructorSW.cxx.

References fIstaL, fIstaM, fIstaR, fNfieldStations, fSetup, fStaL, fStaM, and fStaR.

Referenced by CreateTripletsForHit().

◆ operator=() [1/2]

TripletConstructorSW & cbm::algo::ca::TripletConstructorSW::operator= ( const TripletConstructorSW & )
delete

Copy assignment operator.

References TripletConstructorSW().

◆ operator=() [2/2]

TripletConstructorSW & cbm::algo::ca::TripletConstructorSW::operator= ( TripletConstructorSW && )
delete

Move assignment operator.

References TripletConstructorSW().

◆ SuppressDoubletClones()

Member Data Documentation

◆ fDebugCollectHits

bool cbm::algo::ca::TripletConstructorSW::fDebugCollectHits = false
staticconstexprprivate

Definition at line 112 of file CaTripletConstructorSW.h.

Referenced by CollectHits().

◆ fDebugDublets

bool cbm::algo::ca::TripletConstructorSW::fDebugDublets = false
staticconstexprprivate

Definition at line 110 of file CaTripletConstructorSW.h.

Referenced by CreateTripletsForHit(), and TripletConstructorSW().

◆ fDebugTriplets

bool cbm::algo::ca::TripletConstructorSW::fDebugTriplets = false
staticconstexprprivate

Definition at line 111 of file CaTripletConstructorSW.h.

Referenced by FindTripletHits(), FitTriplets(), and TripletConstructorSW().

◆ fDefaultMass

fscal cbm::algo::ca::TripletConstructorSW::fDefaultMass {constants::phys::MuonMass}
private

mass of the propagated particle [GeV/c2]

Definition at line 84 of file CaTripletConstructorSW.h.

Referenced by TripletConstructorSW().

◆ fDoubletData

Vector<ca::HitIndex_t> cbm::algo::ca::TripletConstructorSW::fDoubletData
private

◆ fField

const cbm::algo::kf::Field<fvec>& cbm::algo::ca::TripletConstructorSW::fField
private

Reference to field.

Definition at line 81 of file CaTripletConstructorSW.h.

Referenced by FitTriplets(), and TripletConstructorSW().

◆ fFldL

kf::FieldRegion<fvec> cbm::algo::ca::TripletConstructorSW::fFldL
private

Definition at line 101 of file CaTripletConstructorSW.h.

◆ fFramework

const ca::Framework& cbm::algo::ca::TripletConstructorSW::fFramework
private

◆ fIhitL

ca::HitIndex_t cbm::algo::ca::TripletConstructorSW::fIhitL
private

index of the left hit in fAlgo->fWindowHits

Definition at line 100 of file CaTripletConstructorSW.h.

Referenced by CreateTripletsForHit(), FindTripletHits(), FitTriplets(), and SuppressDoubletClones().

◆ fIstaL

int cbm::algo::ca::TripletConstructorSW::fIstaL {-1}
private

left station index

Definition at line 92 of file CaTripletConstructorSW.h.

Referenced by FindTripletHits(), FitTriplets(), and InitStations().

◆ fIstaM

int cbm::algo::ca::TripletConstructorSW::fIstaM {-1}
private

middle station index

Definition at line 93 of file CaTripletConstructorSW.h.

Referenced by CreateTripletsForHit(), FindTripletHits(), FitTriplets(), and InitStations().

◆ fIstaR

int cbm::algo::ca::TripletConstructorSW::fIstaR {-1}
private

right station index

Definition at line 94 of file CaTripletConstructorSW.h.

Referenced by CreateTripletsForHit(), FindTripletHits(), FitTriplets(), and InitStations().

◆ fIsTargetField

bool cbm::algo::ca::TripletConstructorSW::fIsTargetField {false}
private

is the magnetic field present at the target

Definition at line 87 of file CaTripletConstructorSW.h.

Referenced by TripletConstructorSW().

◆ fNfieldStations

int cbm::algo::ca::TripletConstructorSW::fNfieldStations {0}
private

Definition at line 90 of file CaTripletConstructorSW.h.

Referenced by InitStations(), and TripletConstructorSW().

◆ fParameters

const Parameters<fvec>& cbm::algo::ca::TripletConstructorSW::fParameters
private

Object of Framework parameters class.

Definition at line 79 of file CaTripletConstructorSW.h.

Referenced by CollectHits(), CreateTripletsForHit(), FindTripletHits(), SuppressDoubletClones(), and TripletConstructorSW().

◆ frWData

WindowData& cbm::algo::ca::TripletConstructorSW::frWData
private

◆ fSetup

const cbm::algo::kf::Setup<fvec>& cbm::algo::ca::TripletConstructorSW::fSetup
private

Reference to the setup.

Definition at line 80 of file CaTripletConstructorSW.h.

Referenced by CollectHits(), CreateTripletsForHit(), FindTripletHits(), FitTriplets(), InitStations(), and TripletConstructorSW().

◆ fStaL

const kf::ActiveLayer<fvec>* cbm::algo::ca::TripletConstructorSW::fStaL {nullptr}
private

left station

Definition at line 96 of file CaTripletConstructorSW.h.

Referenced by FitTriplets(), and InitStations().

◆ fStaM

const kf::ActiveLayer<fvec>* cbm::algo::ca::TripletConstructorSW::fStaM {nullptr}
private

mid station

Definition at line 97 of file CaTripletConstructorSW.h.

Referenced by FitTriplets(), InitStations(), and SuppressDoubletClones().

◆ fStaR

const kf::ActiveLayer<fvec>* cbm::algo::ca::TripletConstructorSW::fStaR {nullptr}
private

right station

Definition at line 98 of file CaTripletConstructorSW.h.

Referenced by FitTriplets(), and InitStations().

◆ fSwMaps

const SearchWindowMapContainer& cbm::algo::ca::TripletConstructorSW::fSwMaps
private

Search windows.

Definition at line 82 of file CaTripletConstructorSW.h.

Referenced by CreateTripletsForHit(), FindTripletHits(), and TripletConstructorSW().

◆ fTrackingMode

ca::TrackingMode cbm::algo::ca::TripletConstructorSW::fTrackingMode
private

Definition at line 85 of file CaTripletConstructorSW.h.

Referenced by SuppressDoubletClones(), and TripletConstructorSW().

◆ fTripletData

Triplet_t cbm::algo::ca::TripletConstructorSW::fTripletData
private

Definition at line 104 of file CaTripletConstructorSW.h.

Referenced by FindTripletHits(), and FitTriplets().


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