Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DTrackHitSelectorTHROWN Class Reference

#include <DTrackHitSelectorTHROWN.h>

+ Inheritance diagram for DTrackHitSelectorTHROWN:

Public Types

enum  fit_type_t { kWireBased = DTrackFitter::kWireBased, kTimeBased = DTrackFitter::kTimeBased, kHelical }
 

Public Member Functions

 DTrackHitSelectorTHROWN (jana::JEventLoop *loop)
 
virtual ~DTrackHitSelectorTHROWN ()
 
void GetCDCHits (fit_type_t fit_type, const DReferenceTrajectory *rt, const vector< const DCDCTrackHit * > &cdchits_in, vector< const DCDCTrackHit * > &cdchits_out, int N=0) const
 
void GetFDCHits (fit_type_t fit_type, const DReferenceTrajectory *rt, const vector< const DFDCPseudo * > &fdchits_in, vector< const DFDCPseudo * > &fdchits_out, int N=0) const
 
void GetCDCHits (double Bz, double q, const vector< DTrackFitter::Extrapolation_t > &extrapolations, const vector< const DCDCTrackHit * > &cdchits_in, vector< const DCDCTrackHit * > &cdchits_out, int N=0) const
 
void GetFDCHits (double Bz, double q, const vector< DTrackFitter::Extrapolation_t > &extrapolations, const vector< const DFDCPseudo * > &fdchits_in, vector< const DFDCPseudo * > &fdchits_out, int N) const
 
int FindTrackNumber (const DReferenceTrajectory *rt) const
 
 JOBJECT_PUBLIC (DTrackHitSelector)
 
void GetCDCHits (fit_type_t fit_type, const DReferenceTrajectory *rt, const vector< const DCDCTrackHit * > &cdchits_in, DTrackFitter *fitter, int N=20) const
 
void GetCDCHits (double Bz, double q, const vector< DTrackFitter::Extrapolation_t > &extrapolations, const vector< const DCDCTrackHit * > &cdchits_in, DTrackFitter *fitter, int N) const
 
void GetFDCHits (fit_type_t fit_type, const DReferenceTrajectory *rt, const vector< const DFDCPseudo * > &fdchits_in, DTrackFitter *fitter, int N=20) const
 
void GetFDCHits (double Bz, double q, const vector< DTrackFitter::Extrapolation_t > &extrapolations, const vector< const DFDCPseudo * > &fdchits_in, DTrackFitter *fitter, int N=20) const
 
void GetAllHits (fit_type_t fit_type, const DReferenceTrajectory *rt, const vector< const DCDCTrackHit * > &cdchits_in, const vector< const DFDCPseudo * > &fdchits_in, DTrackFitter *fitter, int N=20) const
 

Static Public Member Functions

static const DMCTrackHitGetMCTrackHit (const DCoordinateSystem *wire, double rdrift, vector< const DMCTrackHit * > &mctrackhits, int trackno_filter=-1)
 

Protected Attributes

JEventLoop * loop
 

Private Attributes

int HS_DEBUG_LEVEL
 

Detailed Description

Definition at line 17 of file DTrackHitSelectorTHROWN.h.

Member Enumeration Documentation

Enumerator
kWireBased 
kTimeBased 
kHelical 

Definition at line 37 of file DTrackHitSelector.h.

Constructor & Destructor Documentation

DTrackHitSelectorTHROWN::DTrackHitSelectorTHROWN ( jana::JEventLoop *  loop)

Definition at line 19 of file DTrackHitSelectorTHROWN.cc.

References HS_DEBUG_LEVEL.

DTrackHitSelectorTHROWN::~DTrackHitSelectorTHROWN ( )
virtual

Definition at line 28 of file DTrackHitSelectorTHROWN.cc.

Member Function Documentation

void DTrackHitSelector::GetAllHits ( fit_type_t  fit_type,
const DReferenceTrajectory rt,
const vector< const DCDCTrackHit * > &  cdchits_in,
const vector< const DFDCPseudo * > &  fdchits_in,
DTrackFitter fitter,
int  N = 20 
) const
inherited

Get all hits from both CDC and FDC and add them to the specified DTrackFitter object

Definition at line 83 of file DTrackHitSelector.cc.

References DTrackHitSelector::GetCDCHits(), and DTrackHitSelector::GetFDCHits().

Referenced by JEventProcessor_dumpcandidates::evnt(), and DTrackFitter::FindHitsAndFitTrack().

void DTrackHitSelectorTHROWN::GetCDCHits ( fit_type_t  fit_type,
const DReferenceTrajectory rt,
const vector< const DCDCTrackHit * > &  cdchits_in,
vector< const DCDCTrackHit * > &  cdchits_out,
int  N = 0 
) const
virtual

Find the hits for the track indicated by the given reference trajectory using truth points.

This will look through the list of charged tracks in DMCThrown and find the thrown track that most closely matches the starting parameters in "rt". Then, it will look through the DCDCTrackHit objects in cdchits_in and attempt to match them up with CDC hits in the DMCTrackHit objects. In this way, truth information can be used to generate a list of the CDC hits that belong with "rt".

Implements DTrackHitSelector.

Definition at line 36 of file DTrackHitSelectorTHROWN.cc.

References FindTrackNumber(), GetMCTrackHit(), DTrackHitSelector::loop, DCDCTrackHit::tdrift, and DCDCTrackHit::wire.

void DTrackHitSelectorTHROWN::GetCDCHits ( double  Bz,
double  q,
const vector< DTrackFitter::Extrapolation_t > &  extrapolations,
const vector< const DCDCTrackHit * > &  cdchits_in,
vector< const DCDCTrackHit * > &  cdchits_out,
int  N = 0 
) const
inlinevirtual

Implements DTrackHitSelector.

Definition at line 24 of file DTrackHitSelectorTHROWN.h.

void DTrackHitSelector::GetCDCHits ( fit_type_t  fit_type,
const DReferenceTrajectory rt,
const vector< const DCDCTrackHit * > &  cdchits_in,
DTrackFitter fitter,
int  N = 20 
) const
inherited

Get all hits from the CDC and add them to the specified DTrackFitter object

Definition at line 32 of file DTrackHitSelector.cc.

References DTrackFitter::AddHit(), CDCSortByRincreasing(), and DTrackHitSelector::GetCDCHits().

void DTrackHitSelector::GetCDCHits ( double  Bz,
double  q,
const vector< DTrackFitter::Extrapolation_t > &  extrapolations,
const vector< const DCDCTrackHit * > &  cdchits_in,
DTrackFitter fitter,
int  N 
) const
inherited

Get all hits from the CDC and add them to the specified DTrackFitter object

Definition at line 45 of file DTrackHitSelector.cc.

References DTrackFitter::AddHit(), CDCSortByRincreasing(), and DTrackHitSelector::GetCDCHits().

void DTrackHitSelectorTHROWN::GetFDCHits ( fit_type_t  fit_type,
const DReferenceTrajectory rt,
const vector< const DFDCPseudo * > &  fdchits_in,
vector< const DFDCPseudo * > &  fdchits_out,
int  N = 0 
) const
virtual

Find the hits for the track indicated by the given reference trajectory using truth points.

This will look through the list of charged tracks in DMCThrown and find the thrown track that most closely matches the starting parameters in "rt". Then, it will look through the DFDCPseudo objects in cdchits_in and attempt to match them up with FDC hits in the DMCTrackHit objects. In this way, truth information can be used to generate a list of the FDC hits that belong with "rt".

Implements DTrackHitSelector.

Definition at line 69 of file DTrackHitSelectorTHROWN.cc.

References FindTrackNumber(), GetMCTrackHit(), DTrackHitSelector::loop, DFDCPseudo::time, and DFDCPseudo::wire.

void DTrackHitSelectorTHROWN::GetFDCHits ( double  Bz,
double  q,
const vector< DTrackFitter::Extrapolation_t > &  extrapolations,
const vector< const DFDCPseudo * > &  fdchits_in,
vector< const DFDCPseudo * > &  fdchits_out,
int  N 
) const
inlinevirtual

Implements DTrackHitSelector.

Definition at line 25 of file DTrackHitSelectorTHROWN.h.

void DTrackHitSelector::GetFDCHits ( fit_type_t  fit_type,
const DReferenceTrajectory rt,
const vector< const DFDCPseudo * > &  fdchits_in,
DTrackFitter fitter,
int  N = 20 
) const
inherited

Get all hits from the FDC and add them to the specified DTrackFitter object

Definition at line 58 of file DTrackHitSelector.cc.

References DTrackFitter::AddHit(), FDCSortByZincreasing(), and DTrackHitSelector::GetFDCHits().

void DTrackHitSelector::GetFDCHits ( double  Bz,
double  q,
const vector< DTrackFitter::Extrapolation_t > &  extrapolations,
const vector< const DFDCPseudo * > &  fdchits_in,
DTrackFitter fitter,
int  N = 20 
) const
inherited

Get all hits from the FDC and add them to the specified DTrackFitter object

Definition at line 70 of file DTrackHitSelector.cc.

References DTrackFitter::AddHit(), FDCSortByZincreasing(), and DTrackHitSelector::GetFDCHits().

const DMCTrackHit * DTrackHitSelectorTHROWN::GetMCTrackHit ( const DCoordinateSystem wire,
double  rdrift,
vector< const DMCTrackHit * > &  mctrackhits,
int  trackno_filter = -1 
)
static

Identify the DMCTrackHit object (if any) that best matches a hit on a given wire with a given drift distance.

This is static function and so can be used outside of this class. As such, the list of DMCTrackHits must be supplied by the caller. Also, the trackno_filter parameter is optional for use on checking only hits originating from a specific thrown track.

Definition at line 138 of file DTrackHitSelectorTHROWN.cc.

References DCoordinateSystem::L, DCoordinateSystem::origin, DMCTrackHit::phi, DMCTrackHit::primary, DMCTrackHit::r, sin(), SYS_CDC, SYS_FDC, DMCTrackHit::system, DMCTrackHit::track, u, DCoordinateSystem::udir, and DMCTrackHit::z.

Referenced by DCDCTrackHit_factory::evnt(), DEventProcessor_track_hists::hit_info_t::FindLR(), DEventProcessor_candidate_tree::hit_info_t::FindLR(), DTrackFitterALT1::ForceLRTruth(), GetCDCHits(), GetFDCHits(), and DFDCPseudo_factory::makePseudo().

DTrackHitSelector::JOBJECT_PUBLIC ( DTrackHitSelector  )
inherited

Member Data Documentation

int DTrackHitSelectorTHROWN::HS_DEBUG_LEVEL
private

Definition at line 33 of file DTrackHitSelectorTHROWN.h.

Referenced by DTrackHitSelectorTHROWN().

JEventLoop* DTrackHitSelector::loop
protectedinherited

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