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

More...

#include <DTrackCandidate_factory_FDCpseudo.h>

+ Inheritance diagram for DTrackCandidate_factory_FDCpseudo:

Classes

class  DFDCSeed
 
class  DFDCTrkHit
 

Public Types

enum  trk_flags_t {
  NONE = 0x000, NOISE = 0x001, USED = 0x002, CANT_BE_IN_SEED = 0x008,
  ON_CIRCLE = 0x010, IN_THETA_RANGE = 0x020, IN_Z_RANGE = 0x040, VALID_HIT = 0x080,
  OUT_OF_TIME = 0x100
}
 
enum  ret_cond_t { FIT_OK = 0, NO_SEED, BAD_SEED, FIND_FAILED }
 

Public Member Functions

 DTrackCandidate_factory_FDCpseudo ()
 
 ~DTrackCandidate_factory_FDCpseudo ()
 
const string toString (void)
 
virtual const char * Tag (void)
 

Protected Member Functions

virtual jerror_t init (void)
 
virtual jerror_t brun (JEventLoop *loop, int32_t runnumber)
 
virtual jerror_t evnt (JEventLoop *loop, uint64_t eventnumber)
 Invoked via JEventProcessor virtual method. More...
 
virtual jerror_t fini (void)
 Invoked via JEventProcessor virtual method. More...
 
void GetTrkHits (JEventLoop *loop)
 
void FindSeeds (vector< DFDCSeed > &seeds)
 
void FillSeedHits (DFDCSeed &seed)
 
unsigned int NumAvailableHits (void)
 
void FindThetaZ (DFDCSeed &seed)
 
void FindTheta (DFDCSeed &seed, double target_z_min, double target_z_max)
 
void FindZ (DFDCSeed &seed, double theta_min, double theta_max)
 

Protected Attributes

DHoughFind hough
 
vector< DFDCTrkHit * > fdctrkhits
 
float TARGET_Z_MIN
 
float TARGET_Z_MAX
 
double MAX_HIT_DIST
 
double MAX_HIT_DIST2
 

Detailed Description

This is an alternate FDC track finder that is not used as part of the default reconstruction. It is no longer maintained, but is kept around as an independent check against the default FDC finder in DTrackCandiate_factory_FDCpseudo .

Definition at line 38 of file DTrackCandidate_factory_FDCpseudo.h.

Member Enumeration Documentation

Enumerator
FIT_OK 
NO_SEED 
BAD_SEED 
FIND_FAILED 

Definition at line 57 of file DTrackCandidate_factory_FDCpseudo.h.

Enumerator
NONE 
NOISE 
USED 
CANT_BE_IN_SEED 
ON_CIRCLE 
IN_THETA_RANGE 
IN_Z_RANGE 
VALID_HIT 
OUT_OF_TIME 

Definition at line 45 of file DTrackCandidate_factory_FDCpseudo.h.

Constructor & Destructor Documentation

DTrackCandidate_factory_FDCpseudo::DTrackCandidate_factory_FDCpseudo ( )

Definition at line 36 of file DTrackCandidate_factory_FDCpseudo.cc.

DTrackCandidate_factory_FDCpseudo::~DTrackCandidate_factory_FDCpseudo ( )
inline

Definition at line 41 of file DTrackCandidate_factory_FDCpseudo.h.

Member Function Documentation

jerror_t DTrackCandidate_factory_FDCpseudo::brun ( JEventLoop *  loop,
int32_t  runnumber 
)
protectedvirtual

Definition at line 62 of file DTrackCandidate_factory_FDCpseudo.cc.

void DTrackCandidate_factory_FDCpseudo::FindTheta ( DFDCSeed seed,
double  target_z_min,
double  target_z_max 
)
protected

Find the theta value using the hits from seed. The value of seed.r0 is used to calculate theta.

This uses a histogramming technique that looks at the overlaps of the angle ranges subtended by each hit between the given target limits. The overlaps usually lead to a range of values for theta. The limits of these are stored in the theta_min and theta_max fields of the seed. The centroid of the range is stored in the theta field.

Definition at line 394 of file DTrackCandidate_factory_FDCpseudo.cc.

References _DBG_, alpha, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::flags, hist, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::hit, DTrackCandidate_factory_FDCpseudo::DFDCSeed::hits, Nbins, DCoordinateSystem::origin, DTrackCandidate_factory_FDCpseudo::DFDCSeed::phi, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::phi_hit, DTrackCandidate_factory_FDCpseudo::DFDCSeed::q, DTrackCandidate_factory_FDCpseudo::DFDCSeed::r0, DTrackCandidate_factory_FDCpseudo::DFDCSeed::theta, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::theta_max, DTrackCandidate_factory_FDCpseudo::DFDCSeed::theta_max, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::theta_min, DTrackCandidate_factory_FDCpseudo::DFDCSeed::theta_min, DTrackCandidate_factory_FDCpseudo::DFDCSeed::valid, and DFDCPseudo::wire.

void DTrackCandidate_factory_FDCpseudo::FindZ ( DFDCSeed seed,
double  theta_min,
double  theta_max 
)
protected

Find the z value of the vertex using the valid stereo hits from seed. The values for phi_hit and pos.Z() are assumed to be valid as is the status of the VALID_HIT bit in flags.

This uses a histogramming technique that looks at the overlaps of the z ranges subtended by each hit between the given theta limits. The overlaps usually lead to a range of values for z_vertex. The limits of these are stored in the z_min and z_max fields of the seed. The centroid of the range is stored in the z_vertex field.

Definition at line 504 of file DTrackCandidate_factory_FDCpseudo.cc.

References _DBG_, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::flags, hist, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::hit, DTrackCandidate_factory_FDCpseudo::DFDCSeed::hits, Nbins, DCoordinateSystem::origin, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::phi_hit, DTrackCandidate_factory_FDCpseudo::DFDCSeed::q, DTrackCandidate_factory_FDCpseudo::DFDCSeed::r0, DTrackCandidate_factory_FDCpseudo::DFDCSeed::valid, DFDCPseudo::wire, DTrackCandidate_factory_FDCpseudo::DFDCSeed::z_max, DTrackCandidate_factory_FDCpseudo::DFDCSeed::z_min, DTrackCandidate_factory_FDCpseudo::DFDCSeed::z_vertex, zmax, DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::zmax, zmin, and DTrackCandidate_factory_FDCpseudo::DFDCTrkHit::zmin.

jerror_t DTrackCandidate_factory_FDCpseudo::fini ( void  )
protectedvirtual

Invoked via JEventProcessor virtual method.

Definition at line 70 of file DTrackCandidate_factory_FDCpseudo.cc.

jerror_t DTrackCandidate_factory_FDCpseudo::init ( void  )
protectedvirtual

Definition at line 48 of file DTrackCandidate_factory_FDCpseudo.cc.

unsigned int DTrackCandidate_factory_FDCpseudo::NumAvailableHits ( void  )
protected
virtual const char* DTrackCandidate_factory_FDCpseudo::Tag ( void  )
inlinevirtual

Definition at line 43 of file DTrackCandidate_factory_FDCpseudo.h.

const string DTrackCandidate_factory_FDCpseudo::toString ( void  )

Member Data Documentation

vector<DFDCTrkHit*> DTrackCandidate_factory_FDCpseudo::fdctrkhits
protected

Definition at line 108 of file DTrackCandidate_factory_FDCpseudo.h.

DHoughFind DTrackCandidate_factory_FDCpseudo::hough
protected

Definition at line 106 of file DTrackCandidate_factory_FDCpseudo.h.

double DTrackCandidate_factory_FDCpseudo::MAX_HIT_DIST
protected

Definition at line 120 of file DTrackCandidate_factory_FDCpseudo.h.

double DTrackCandidate_factory_FDCpseudo::MAX_HIT_DIST2
protected

Definition at line 121 of file DTrackCandidate_factory_FDCpseudo.h.

float DTrackCandidate_factory_FDCpseudo::TARGET_Z_MAX
protected

Definition at line 119 of file DTrackCandidate_factory_FDCpseudo.h.

float DTrackCandidate_factory_FDCpseudo::TARGET_Z_MIN
protected

Definition at line 118 of file DTrackCandidate_factory_FDCpseudo.h.


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