16#ifdef TRKRECO_DEBUG_DETAIL
26#include "CLHEP/Alist/AList.h"
27#include "TrkReco/TUpdater.h"
29#ifndef CLHEP_POINT3D_H
30# include "CLHEP/Geometry/Point3D.h"
32#ifndef ENABLE_BACKWARDS_COMPATIBILITY
74 std::string
name(
void )
const;
83 void dump(
const std::string& message )
const;
99 void update(
bool mcAnalysis =
true );
194 float T0Offset = 0. );
209 const std::string _cdcVersion;
211 const unsigned _nWires;
212 const unsigned _nSuperLayers;
213 const unsigned _nLayers;
233# define TMDC_INLINE_DEFINE_HERE
236#ifdef TMDC_INLINE_DEFINE_HERE
253 return _superLayers[id];
259 static const float pi2 = 2. *
M_PI;
260 a = std::fmod( a,
pi2 );
261 if ( a < 0. )
return a +
pi2;
269inline std::string
TMDC::cdcVersion(
void )
const {
return std::string( _cdcVersion ); }
271inline unsigned TMDC::nWires(
void )
const {
return _nWires; }
275inline unsigned TMDC::nLayers(
void )
const {
return _nLayers; }
HepGeom::Point3D< double > HepPoint3D
character *LEPTONflag integer iresonances real pi2
HepGeom::Point3D< double > HepPoint3D
A class to represent a wire layer.
A class to represent a MC wire hit in MDC.
A class to represent a wire in MDC.
void fastClear(void)
clears TMDC information.
static unsigned localId(unsigned wireId)
void update(bool mcAnalysis=true)
updates TMDC information. clear() is called in this function.
float fudgeFactor(void) const
returns fudge factor for drift time error.
static std::string wireName(const MdcGeoWire *const)
static unsigned axialStereoLayerId(const MdcGeoLayer *const)
unsigned nLocalLayer(unsigned superLayerId) const
static unsigned localLayerId(unsigned wireId)
const TMDCWire *const wire(unsigned wireId) const
returns a pointer to a wire. 0 will be returned if 'wireId' is invalid.
static TMDC * getTMDC(const std::string &cdcVersion)
returns TMDC object.
void updateMC(void)
updates TMDC information for MC.
static std::string wireName(unsigned wireId)
const TMDCWire *const wire(const HepPoint3D &point) const
returns a pointer to a wire.
std::string cdcVersion(void) const
returns MDC version.
static unsigned superLayerId(unsigned wireId)
unsigned nLayers(void) const
static unsigned superLayerId(unsigned wireId)
std::string name(void) const
returns name.
static unsigned layerId(unsigned wireId)
static unsigned superLayerId(const MdcGeoWire *const)
static unsigned layerId(const MdcGeoWire *const)
const AList< TMDCWireHit > & hits(unsigned mask=0) const
returns a list of TMDCWireHit. 'update()' must be called before calling this function.
int debugLevel(int)
sets debug level.
static unsigned layerId(unsigned wireId)
const AList< TMDCWireHit > & axialHits(unsigned mask=0) const
returns a list of axial hits. 'update()' must be called before calling this function.
unsigned nWires(void) const
static float phi(float phi)
static unsigned axialStereoLayerId(const MdcGeoLayer *const)
const TMDCLayer *const layer(unsigned id) const
returns a pointer to a layer. 0 will be returned if 'id' is invalid.
static unsigned superLayerId(const MdcGeoLayer *const)
static unsigned localLayerId(const MdcGeoLayer *const)
std::string version(void) const
returns version.
const TMDCWire *const wire(float r, float phi) const
returns a pointer to a wire.
static float phi(float phi)
const AList< TMDCWireHit > & badHits(void)
returns bad hits(finding invalid hits).
static TMDC * getTMDC(void)
const AList< TMDCWireHit > & stereoHits(unsigned mask=0) const
returns a list of stereo hits. 'update()' must be called before calling this function.
static std::string wireName(const MdcRec_wirhit &)
void dump(const std::string &message) const
dumps debug information.
static unsigned localLayerId(const MdcGeoWire *const)
const TMDCWire *const wire(unsigned layerId, int localId) const
int debugLevel(void) const
returns debug level.
const AList< TMDCLayer > *const superLayer(unsigned id) const
returns a pointer to a super-layer. 0 will be returned if 'id' is invalid.
const AList< TMDCWireHitMC > & hitsMC(void) const
void clear(void)
clears all TMDC information.
unsigned nSuperLayers(void) const
static void driftDistance(TMLink &link, const TTrack &track, unsigned correctionFlag=0, float T0Offset=0.)
static unsigned layerId(unsigned axialStereo, unsigned axialStereoLayerId)
static unsigned localId(const MdcGeoWire *const)
float fudgeFactor(float)
sets/returns fudge factor for drift time error.
void classification(void)
classify hits.
static unsigned localId(unsigned wireId)
A class to relate TMDCWireHit and TTrack objects.
A class to represent a track in tracking.
A class to handle update timing of static objects of tracking.