BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
MdcSeg Class Reference

#include <MdcSeg.h>

Inheritance diagram for MdcSeg:

Public Member Functions

 MdcSeg (double bunchT)
virtual ~MdcSeg ()
double phi () const
double slope () const
double chisq () const
unsigned int quality () const
const double * errmat () const
const MdcSuperLayersuperlayer () const
MdcSegInfoinfo () const
void setInfo (MdcSegInfo *ptr)
void setAmbig ()
void setUsed ()
void setFull ()
void setPattern (unsigned thePatt)
int segAmbig ()
int segUsed ()
int segFull ()
unsigned segPattern () const
double bunchTime ()
void plotSeg () const
void plotSegAll () const
void setValues (int nInPatt, int nhit, MdcHit *hits[], MdcLine *span, const MdcSuperLayer *slay, int ambig[])
void setValues (int nInPatt, double inPhi, double inSlope, double chi2, double inError[3], const MdcSuperLayer *slay)
int addHits (MdcLine *span, MdcHit *hits[], const MdcHitMap *, double corr)
void markHits (const MdcMap< const MdcHit *, MdcSegUsage * > &usedHits) const
void append (MdcHitUse *)
void remove (MdcHitUse *)
int nHit () const
MdcHitUsehit (int i) const
double testCombSeg (const MdcSeg *) const
double testCombSegPt () const
double testCombSegTheta () const
double testCombSegPhi () const
double testCombSegAmbig () const
MdcSegoperator= (const MdcSeg &)
 MdcSeg (const MdcSeg &)
 MdcSeg (double bunchT)
virtual ~MdcSeg ()
double phi () const
double slope () const
double chisq () const
unsigned int quality () const
const double * errmat () const
const MdcSuperLayersuperlayer () const
MdcSegInfoinfo () const
void setInfo (MdcSegInfo *ptr)
void setAmbig ()
void setUsed ()
void setFull ()
void setPattern (unsigned thePatt)
int segAmbig ()
int segUsed ()
int segFull ()
unsigned segPattern () const
double bunchTime ()
void plotSeg () const
void plotSegAll () const
void setValues (int nInPatt, int nhit, MdcHit *hits[], MdcLine *span, const MdcSuperLayer *slay, int ambig[])
void setValues (int nInPatt, double inPhi, double inSlope, double chi2, double inError[3], const MdcSuperLayer *slay)
int addHits (MdcLine *span, MdcHit *hits[], const MdcHitMap *, double corr)
void markHits (const MdcMap< const MdcHit *, MdcSegUsage * > &usedHits) const
void append (MdcHitUse *)
void remove (MdcHitUse *)
int nHit () const
MdcHitUsehit (int i) const
double testCombSeg (const MdcSeg *) const
double testCombSegPt () const
double testCombSegTheta () const
double testCombSegPhi () const
double testCombSegAmbig () const
MdcSegoperator= (const MdcSeg &)
 MdcSeg (const MdcSeg &)
 MdcSeg (double bunchT)
virtual ~MdcSeg ()
double phi () const
double slope () const
double chisq () const
unsigned int quality () const
const double * errmat () const
const MdcSuperLayersuperlayer () const
MdcSegInfoinfo () const
void setInfo (MdcSegInfo *ptr)
void setAmbig ()
void setUsed ()
void setFull ()
void setPattern (unsigned thePatt)
int segAmbig ()
int segUsed ()
int segFull ()
unsigned segPattern () const
double bunchTime ()
void plotSeg () const
void plotSegAll () const
void setValues (int nInPatt, int nhit, MdcHit *hits[], MdcLine *span, const MdcSuperLayer *slay, int ambig[])
void setValues (int nInPatt, double inPhi, double inSlope, double chi2, double inError[3], const MdcSuperLayer *slay)
int addHits (MdcLine *span, MdcHit *hits[], const MdcHitMap *, double corr)
void markHits (const MdcMap< const MdcHit *, MdcSegUsage * > &usedHits) const
void append (MdcHitUse *)
void remove (MdcHitUse *)
int nHit () const
MdcHitUsehit (int i) const
double testCombSeg (const MdcSeg *) const
double testCombSegPt () const
double testCombSegTheta () const
double testCombSegPhi () const
double testCombSegAmbig () const
MdcSegoperator= (const MdcSeg &)
 MdcSeg (const MdcSeg &)

Static Public Member Functions

static MdcSegParamssegPar ()
static void setParam (MdcSegParams *segpar)
static MdcSegParamssegPar ()
static void setParam (MdcSegParams *segpar)
static MdcSegParamssegPar ()
static void setParam (MdcSegParams *segpar)

Additional Inherited Members

Detailed Description

Constructor & Destructor Documentation

◆ MdcSeg() [1/6]

MdcSeg::MdcSeg ( double bunchT)

Definition at line 34 of file MdcSeg.cxx.

34 {
35 //------------------------------------------------------------------------
36 _info = 0;
37 _bunchTime = bt;
38}

Referenced by MdcSeg(), operator=(), and testCombSeg().

◆ ~MdcSeg() [1/3]

MdcSeg::~MdcSeg ( )
virtual

Definition at line 41 of file MdcSeg.cxx.

41 {
42 //------------------------------------------------------------------------
43 if ( _info != 0 ) delete _info;
44 reset(); // delete Hots
45}

◆ MdcSeg() [2/6]

MdcSeg::MdcSeg ( const MdcSeg & other)

Definition at line 48 of file MdcSeg.cxx.

49 : GmsListLink()
50 , _slayer( other._slayer )
51 , _phi( other._phi )
52 , _slope( other._slope )
53 , _chisq( other._chisq )
54 , _qual( other._qual )
55 , _pattern( other._pattern )
56 , _info( other._info )
57 , _bunchTime( other._bunchTime )
58//------------------------------------------------------------------------
59{
60 HepAListDeleteAll( _theList );
61 for ( int i = 0; i < other.nHit(); i++ ) { _theList.append( other.hit( i ) ); }
62 for ( int j = 0; j < 3; j++ )
63 {
64 _errmat[0] = other._errmat[0];
65 _errmat[1] = other._errmat[1];
66 _errmat[2] = other._errmat[2];
67 }
68 segParam = other.segParam;
69}
Index other(Index i, Index j)

◆ MdcSeg() [3/6]

MdcSeg::MdcSeg ( double bunchT)

◆ ~MdcSeg() [2/3]

virtual MdcSeg::~MdcSeg ( )
virtual

◆ MdcSeg() [4/6]

MdcSeg::MdcSeg ( const MdcSeg & )

◆ MdcSeg() [5/6]

MdcSeg::MdcSeg ( double bunchT)

◆ ~MdcSeg() [3/3]

virtual MdcSeg::~MdcSeg ( )
virtual

◆ MdcSeg() [6/6]

MdcSeg::MdcSeg ( const MdcSeg & )

Member Function Documentation

◆ addHits() [1/3]

int MdcSeg::addHits ( MdcLine * span,
MdcHit * hits[],
const MdcHitMap * ,
double corr )

◆ addHits() [2/3]

int MdcSeg::addHits ( MdcLine * span,
MdcHit * hits[],
const MdcHitMap * ,
double corr )

◆ addHits() [3/3]

int MdcSeg::addHits ( MdcLine * span,
MdcHit * hits[],
const MdcHitMap * ,
double corr )

◆ append() [1/3]

void MdcSeg::append ( MdcHitUse * theHitUse)

Definition at line 359 of file MdcSeg.cxx.

359 {
360 //------------------------------------------------------------------------
361 _theList.append( theHitUse );
362}

Referenced by MdcSegList::append(), and setValues().

◆ append() [2/3]

void MdcSeg::append ( MdcHitUse * )

◆ append() [3/3]

void MdcSeg::append ( MdcHitUse * )

◆ bunchTime() [1/3]

double MdcSeg::bunchTime ( )
inline

Definition at line 61 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcTrkRecon/MdcSeg.h.

61{ return _bunchTime; }

Referenced by MdcSegInfoSterO::calcStereo().

◆ bunchTime() [2/3]

double MdcSeg::bunchTime ( )
inline

Definition at line 61 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

61{ return _bunchTime; }

◆ bunchTime() [3/3]

double MdcSeg::bunchTime ( )
inline

Definition at line 61 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

61{ return _bunchTime; }

◆ chisq() [1/3]

double MdcSeg::chisq ( ) const
inline

Definition at line 47 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcTrkRecon/MdcSeg.h.

47{ return _chisq; }

Referenced by plotSegAll().

◆ chisq() [2/3]

double MdcSeg::chisq ( ) const
inline

Definition at line 47 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

47{ return _chisq; }

◆ chisq() [3/3]

double MdcSeg::chisq ( ) const
inline

Definition at line 47 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

47{ return _chisq; }

◆ errmat() [1/3]

const double * MdcSeg::errmat ( ) const
inline

◆ errmat() [2/3]

const double * MdcSeg::errmat ( ) const
inline

Definition at line 49 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

49{ return _errmat; }

◆ errmat() [3/3]

const double * MdcSeg::errmat ( ) const
inline

Definition at line 49 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

49{ return _errmat; }

◆ hit() [1/3]

◆ hit() [2/3]

MdcHitUse * MdcSeg::hit ( int i) const
inline

Definition at line 76 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

76{ return _theList[i]; }

◆ hit() [3/3]

MdcHitUse * MdcSeg::hit ( int i) const
inline

Definition at line 76 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

76{ return _theList[i]; }

◆ info() [1/3]

◆ info() [2/3]

MdcSegInfo * MdcSeg::info ( ) const
inline

Definition at line 51 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

51{ return _info; }

◆ info() [3/3]

MdcSegInfo * MdcSeg::info ( ) const
inline

Definition at line 51 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

51{ return _info; }

◆ markHits() [1/3]

void MdcSeg::markHits ( const MdcMap< const MdcHit *, MdcSegUsage * > & usedHits) const

Definition at line 146 of file MdcSeg.cxx.

146 {
147 //------------------------------------------------------------------------
148 for ( int i = 0; i < nHit(); i++ )
149 {
150 MdcHitUse* alink = _theList[i];
151 MdcSegUsage* x;
152 if ( usedHits.get( alink->mdcHit(), x ) ) x->setUsedAmbig( alink->ambig() );
153 }
154}
Double_t x[10]
const MdcHit * mdcHit() const
Definition MdcHitUse.cxx:62
bool get(const K &theKey, V &theAnswer) const
int nHit() const
Definition MdcSeg.cxx:372

◆ markHits() [2/3]

void MdcSeg::markHits ( const MdcMap< const MdcHit *, MdcSegUsage * > & usedHits) const

◆ markHits() [3/3]

void MdcSeg::markHits ( const MdcMap< const MdcHit *, MdcSegUsage * > & usedHits) const

◆ nHit() [1/3]

int MdcSeg::nHit ( ) const

◆ nHit() [2/3]

int MdcSeg::nHit ( ) const

◆ nHit() [3/3]

int MdcSeg::nHit ( ) const

◆ operator=() [1/3]

MdcSeg & MdcSeg::operator= ( const MdcSeg & other)

Definition at line 72 of file MdcSeg.cxx.

72 {
73 //------------------------------------------------------------------------
74 if ( &other != this )
75 {
76
77 HepAListDeleteAll( _theList );
78 for ( int i = 0; i < other.nHit(); i++ ) { _theList.append( other.hit( i ) ); }
79 _slayer = other._slayer;
80 _phi = other._phi;
81 _slope = other._slope;
82 _errmat[0] = other._errmat[0];
83 _errmat[1] = other._errmat[1];
84 _errmat[2] = other._errmat[2];
85 _chisq = other._chisq;
86 _qual = other._qual;
87 _pattern = other._pattern;
88 _info = other._info;
89 _bunchTime = other._bunchTime;
90 segParam = other.segParam;
91 }
92
93 return *this;
94}

◆ operator=() [2/3]

MdcSeg & MdcSeg::operator= ( const MdcSeg & )

◆ operator=() [3/3]

MdcSeg & MdcSeg::operator= ( const MdcSeg & )

◆ phi() [1/3]

◆ phi() [2/3]

double MdcSeg::phi ( ) const
inline

Definition at line 45 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

45{ return _phi; }

◆ phi() [3/3]

double MdcSeg::phi ( ) const
inline

Definition at line 45 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

45{ return _phi; }

◆ plotSeg() [1/3]

void MdcSeg::plotSeg ( ) const

Definition at line 198 of file MdcSeg.cxx.

198 {
199 //------------------------------------------------------------------------
200 std::cout << superlayer()->slayNum() << " pat" << segPattern() << " ";
201 for ( int ihit = 0; ihit < nHit(); ihit++ )
202 {
203 hit( ihit )->mdcHit()->print( std::cout ); // print hit
204 std::cout << hit( ihit )->ambig() << " ";
205 }
206 if ( info() != NULL ) { cout << " . "; }
207 // std::cout << std::endl;
208}
void print(std::ostream &o) const

Referenced by MdcSegInfoSterO::calcStereo(), MdcSegGrouperSt::fillWithSegs(), and MdcSegGrouperSt::incompWithGroup().

◆ plotSeg() [2/3]

void MdcSeg::plotSeg ( ) const

◆ plotSeg() [3/3]

void MdcSeg::plotSeg ( ) const

◆ plotSegAll() [1/3]

void MdcSeg::plotSegAll ( ) const

Definition at line 157 of file MdcSeg.cxx.

157 {
158 //------------------------------------------------------------------------
159 // print hit
160 // if(superlayer()!=NULL) std::cout<<"sl"<<superlayer()->slayNum()<<" p"<<segPattern()<<"
161 // st"<<quality();
162 for ( int ihit = 0; ihit < nHit(); ihit++ )
163 {
164 hit( ihit )->mdcHit()->print( std::cout );
165 std::cout << setw( 2 ) << hit( ihit )->ambig() << " ";
166 }
167
168 // cout << setiosflags( ios::fixed );
169 if ( info() != NULL )
170 {
171 std::cout << " phi " << setprecision( 2 ) << phi() << " slope " << std::setw( 2 )
172 << setprecision( 2 ) << slope() << " ";
173 if ( superlayer()->whichView() == 0 )
174 {
175 std::cout << setprecision( 2 ) << "phi0=" << info()->par( 0 );
176 cout << setprecision( 5 ) << " cpa=" << info()->par( 1 );
177 }
178 else
179 {
180 std::cout << setprecision( 2 ) << "z0=" << info()->par( 0 ) << setprecision( 2 )
181 << " ct=" << info()->par( 1 );
182 }
183 if ( fabs( info()->arc() ) > 0.0001 )
184 { std::cout << setprecision( 2 ) << " arc=" << info()->arc(); }
185 std::cout << setprecision( 3 ) << " chi2=" << _chisq;
186 }
187 else
188 {
189 std::cout << " phi " << setprecision( 2 ) << phi() << " slope " << std::setw( 2 )
190 << setprecision( 2 ) << slope() << " chi2 " << setprecision( 3 ) << chisq();
191 }
192
193 std::cout << std::defaultfloat;
194 // cout << setprecision( 6 );
195 // cout << setiosflags( ios::scientific );
196}

Referenced by MdcSegGrouper::combineSegs(), MdcTrackList::dumpSeed(), MdcSegGrouperAx::incompWithSeg(), MdcSegList::plot(), and MdcSegGrouper::transferHits().

◆ plotSegAll() [2/3]

void MdcSeg::plotSegAll ( ) const

◆ plotSegAll() [3/3]

void MdcSeg::plotSegAll ( ) const

◆ quality() [1/3]

unsigned int MdcSeg::quality ( ) const
inline

Definition at line 48 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcTrkRecon/MdcSeg.h.

48{ return _qual; }

Referenced by MdcSegGrouperAx::incompWithSeg().

◆ quality() [2/3]

unsigned int MdcSeg::quality ( ) const
inline

Definition at line 48 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

48{ return _qual; }

◆ quality() [3/3]

unsigned int MdcSeg::quality ( ) const
inline

Definition at line 48 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

48{ return _qual; }

◆ remove() [1/3]

void MdcSeg::remove ( MdcHitUse * theHitUse)

Definition at line 365 of file MdcSeg.cxx.

365 {
366 //------------------------------------------------------------------------
367 _theList.remove( theHitUse );
368 delete theHitUse;
369}

◆ remove() [2/3]

void MdcSeg::remove ( MdcHitUse * )

◆ remove() [3/3]

void MdcSeg::remove ( MdcHitUse * )

◆ segAmbig() [1/3]

int MdcSeg::segAmbig ( )
inline

◆ segAmbig() [2/3]

int MdcSeg::segAmbig ( )
inline

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

57{ return ( _qual & segAmbigFlag ); }

◆ segAmbig() [3/3]

int MdcSeg::segAmbig ( )
inline

Definition at line 57 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

57{ return ( _qual & segAmbigFlag ); }

◆ segFull() [1/3]

int MdcSeg::segFull ( )
inline

◆ segFull() [2/3]

int MdcSeg::segFull ( )
inline

Definition at line 59 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

59{ return ( _qual & segFullFlag ); }

◆ segFull() [3/3]

int MdcSeg::segFull ( )
inline

Definition at line 59 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

59{ return ( _qual & segFullFlag ); }

◆ segPar() [1/3]

MdcSegParams * MdcSeg::segPar ( )
inlinestatic

◆ segPar() [2/3]

MdcSegParams * MdcSeg::segPar ( )
inlinestatic

Definition at line 78 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

78{ return segParam; }

◆ segPar() [3/3]

MdcSegParams * MdcSeg::segPar ( )
inlinestatic

Definition at line 78 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

78{ return segParam; }

◆ segPattern() [1/3]

unsigned MdcSeg::segPattern ( ) const
inline

Definition at line 60 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcTrkRecon/MdcSeg.h.

60{ return _pattern; }

Referenced by plotSeg().

◆ segPattern() [2/3]

unsigned MdcSeg::segPattern ( ) const
inline

Definition at line 60 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

60{ return _pattern; }

◆ segPattern() [3/3]

unsigned MdcSeg::segPattern ( ) const
inline

Definition at line 60 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

60{ return _pattern; }

◆ segUsed() [1/3]

int MdcSeg::segUsed ( )
inline

◆ segUsed() [2/3]

int MdcSeg::segUsed ( )
inline

Definition at line 58 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

58{ return ( _qual & segUsedFlag ); }

◆ segUsed() [3/3]

int MdcSeg::segUsed ( )
inline

Definition at line 58 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

58{ return ( _qual & segUsedFlag ); }

◆ setAmbig() [1/3]

void MdcSeg::setAmbig ( )
inline

◆ setAmbig() [2/3]

void MdcSeg::setAmbig ( )
inline

◆ setAmbig() [3/3]

void MdcSeg::setAmbig ( )
inline

◆ setFull() [1/3]

void MdcSeg::setFull ( )
inline

◆ setFull() [2/3]

void MdcSeg::setFull ( )
inline

◆ setFull() [3/3]

void MdcSeg::setFull ( )
inline

◆ setInfo() [1/3]

void MdcSeg::setInfo ( MdcSegInfo * ptr)

Definition at line 97 of file MdcSeg.cxx.

97 {
98 //------------------------------------------------------------------------
99 delete _info; // if any
100 _info = newInfo;
101}

Referenced by MdcSegGrouperAx::fillWithSegs(), MdcSegGrouperCsmc::fillWithSegs(), and MdcSegGrouperSt::fillWithSegs().

◆ setInfo() [2/3]

void MdcSeg::setInfo ( MdcSegInfo * ptr)

◆ setInfo() [3/3]

void MdcSeg::setInfo ( MdcSegInfo * ptr)

◆ setParam() [1/3]

void MdcSeg::setParam ( MdcSegParams * segpar)
inlinestatic

Definition at line 79 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcTrkRecon/MdcSeg.h.

79{ segParam = segpar; }

Referenced by MdcSegList::MdcSegList().

◆ setParam() [2/3]

void MdcSeg::setParam ( MdcSegParams * segpar)
inlinestatic

Definition at line 79 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

79{ segParam = segpar; }

◆ setParam() [3/3]

void MdcSeg::setParam ( MdcSegParams * segpar)
inlinestatic

Definition at line 79 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

79{ segParam = segpar; }

◆ setPattern() [1/3]

void MdcSeg::setPattern ( unsigned thePatt)
inline

Definition at line 56 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcTrkRecon/MdcSeg.h.

56{ _pattern = thePatt; }

◆ setPattern() [2/3]

void MdcSeg::setPattern ( unsigned thePatt)
inline

Definition at line 56 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

56{ _pattern = thePatt; }

◆ setPattern() [3/3]

void MdcSeg::setPattern ( unsigned thePatt)
inline

Definition at line 56 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

56{ _pattern = thePatt; }

◆ setUsed() [1/3]

void MdcSeg::setUsed ( )
inline

◆ setUsed() [2/3]

void MdcSeg::setUsed ( )
inline

◆ setUsed() [3/3]

void MdcSeg::setUsed ( )
inline

◆ setValues() [1/6]

void MdcSeg::setValues ( int nInPatt,
double inPhi,
double inSlope,
double chi2,
double inError[3],
const MdcSuperLayer * slay )

Definition at line 127 of file MdcSeg.cxx.

128 {
129 //------------------------------------------------------------------------
130 // Sets segment values with no associated hits
131 _qual = 0;
132 if ( nInPatt == 4 ) _qual |= segFullFlag;
133 _phi = inPhi;
134 _slope = inSlope;
135 _chisq = chi2;
136 _errmat[0] = inError[0];
137 _errmat[1] = inError[1];
138 _errmat[2] = inError[2];
139 _slayer = slay;
140 reset(); // clears hit list
141
142 return;
143}

◆ setValues() [2/6]

void MdcSeg::setValues ( int nInPatt,
double inPhi,
double inSlope,
double chi2,
double inError[3],
const MdcSuperLayer * slay )

◆ setValues() [3/6]

void MdcSeg::setValues ( int nInPatt,
double inPhi,
double inSlope,
double chi2,
double inError[3],
const MdcSuperLayer * slay )

◆ setValues() [4/6]

void MdcSeg::setValues ( int nInPatt,
int nhit,
MdcHit * hits[],
MdcLine * span,
const MdcSuperLayer * slay,
int ambig[] )

Definition at line 104 of file MdcSeg.cxx.

105 {
106 //------------------------------------------------------------------------
107 _qual = 0;
108 if ( nInPatt == 4 ) _qual |= segFullFlag;
109 _phi = BesAngle( span->intercept );
110 _slope = span->slope;
111 _chisq = span->chisq;
112 _errmat[0] = span->errmat[0];
113 _errmat[1] = span->errmat[1];
114 _errmat[2] = span->errmat[2];
115 reset();
116 _slayer = slay;
117 for ( int i = 0; i < nhit; i++ )
118 {
119 MdcHitUse* alink = new MdcHitUse( *( hits[i] ), superlayer()->rad0(), ambig[i] );
120 append( alink );
121 }
122
123 return;
124}
void append(MdcHitUse *)
Definition MdcSeg.cxx:359

◆ setValues() [5/6]

void MdcSeg::setValues ( int nInPatt,
int nhit,
MdcHit * hits[],
MdcLine * span,
const MdcSuperLayer * slay,
int ambig[] )

◆ setValues() [6/6]

void MdcSeg::setValues ( int nInPatt,
int nhit,
MdcHit * hits[],
MdcLine * span,
const MdcSuperLayer * slay,
int ambig[] )

◆ slope() [1/3]

double MdcSeg::slope ( ) const
inline

◆ slope() [2/3]

double MdcSeg::slope ( ) const
inline

Definition at line 46 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

46{ return _slope; }

◆ slope() [3/3]

double MdcSeg::slope ( ) const
inline

Definition at line 46 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

46{ return _slope; }

◆ superlayer() [1/3]

◆ superlayer() [2/3]

const MdcSuperLayer * MdcSeg::superlayer ( ) const
inline

Definition at line 50 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcTrkRecon/MdcSeg.h.

50{ return _slayer; }

◆ superlayer() [3/3]

const MdcSuperLayer * MdcSeg::superlayer ( ) const
inline

Definition at line 50 of file Reconstruction/MdcPatRec/MdcTrkRecon/include/MdcTrkRecon/MdcSeg.h.

50{ return _slayer; }

◆ testCombSeg() [1/3]

double MdcSeg::testCombSeg ( const MdcSeg * testSeg) const

Definition at line 378 of file MdcSeg.cxx.

378 {
379 //------------------------------------------------------------------------
380 int tkId = -1;
381 for ( int i = 0; i < nHit(); i++ )
382 {
383 const MdcHit* h = hit( i )->mdcHit();
384 unsigned int l = h->layernumber();
385 unsigned int w = h->wirenumber();
386 // std::cout<< __FILE__ << " ref " << i << "
387 // haveDigiTk("<<l<<","<<w<<")"<<haveDigiTk[l][w]<<std::endl;
388 if ( haveDigiTk[l][w] < 0 || haveDigiTk[l][w] > 100 ) continue;
389 if ( tkId < 0 ) { tkId = haveDigiTk[l][w]; }
390 else if ( haveDigiTk[l][w] != tkId )
391 {
392 return -1; // hits in this seg not in same mc track
393 }
394 } // end for
395
396 double nSame = 0.;
397 for ( int i = 0; i < testSeg->nHit(); i++ )
398 {
399 const MdcHit* h = testSeg->hit( i )->mdcHit();
400 unsigned int l = h->layernumber();
401 unsigned int w = h->wirenumber();
402 if ( haveDigiTk[l][w] == tkId ) { ++nSame; }
403 }
404
405 return nSame / testSeg->nHit();
406}
double w
int haveDigiTk[43][288]

Referenced by MdcSegGrouperAx::incompWithSeg().

◆ testCombSeg() [2/3]

double MdcSeg::testCombSeg ( const MdcSeg * ) const

◆ testCombSeg() [3/3]

double MdcSeg::testCombSeg ( const MdcSeg * ) const

◆ testCombSegAmbig() [1/3]

double MdcSeg::testCombSegAmbig ( ) const

Definition at line 463 of file MdcSeg.cxx.

463 {
464 //------------------------------------------------------------------------
465 double ambigOk = 0.;
466 for ( int i = 0; i < nHit(); i++ )
467 {
468 const MdcHit* h = hit( i )->mdcHit();
469 unsigned int l = h->layernumber();
470 unsigned int w = h->wirenumber();
471 if ( hit( i )->ambig() == haveDigiAmbig[l][w] ) ambigOk++;
472 } // end for
473
474 return ambigOk / nHit();
475}
int haveDigiAmbig[43][288]

Referenced by MdcSegGrouperAx::incompWithSeg().

◆ testCombSegAmbig() [2/3]

double MdcSeg::testCombSegAmbig ( ) const

◆ testCombSegAmbig() [3/3]

double MdcSeg::testCombSegAmbig ( ) const

◆ testCombSegPhi() [1/3]

double MdcSeg::testCombSegPhi ( ) const

Definition at line 445 of file MdcSeg.cxx.

445 {
446 //------------------------------------------------------------------------
447 double truthPhi = -999.;
448 for ( int i = 0; i < nHit(); i++ )
449 {
450 const MdcHit* h = hit( i )->mdcHit();
451 unsigned int l = h->layernumber();
452 unsigned int w = h->wirenumber();
453 if ( haveDigiPhi[l][w] < -998. ) continue;
454 // std::cout<< __FILE__ << " " << __LINE__ << "
455 // haveDigiPhi("<<l<<","<<w<<")"<<haveDigiPhi[l][w]<<std::endl;
456 if ( truthPhi < -998. ) { truthPhi = haveDigiPhi[l][w]; }
457 } // end for
458
459 return truthPhi;
460}
double haveDigiPhi[43][288]

◆ testCombSegPhi() [2/3]

double MdcSeg::testCombSegPhi ( ) const

◆ testCombSegPhi() [3/3]

double MdcSeg::testCombSegPhi ( ) const

◆ testCombSegPt() [1/3]

double MdcSeg::testCombSegPt ( ) const

Definition at line 409 of file MdcSeg.cxx.

409 {
410 //------------------------------------------------------------------------
411 double truthPt = -1.;
412 for ( int i = 0; i < nHit(); i++ )
413 {
414 const MdcHit* h = hit( i )->mdcHit();
415 unsigned int l = h->layernumber();
416 unsigned int w = h->wirenumber();
417 if ( haveDigiPt[l][w] < 0 ) continue;
418 // std::cout<< __FILE__ << " " << __LINE__ << "
419 // haveDigiPt("<<l<<","<<w<<")"<<haveDigiPt[l][w]<<std::endl;
420 if ( truthPt < 0 ) { truthPt = haveDigiPt[l][w]; }
421 } // end for
422
423 return truthPt;
424}
double haveDigiPt[43][288]

Referenced by MdcSegGrouperAx::incompWithSeg().

◆ testCombSegPt() [2/3]

double MdcSeg::testCombSegPt ( ) const

◆ testCombSegPt() [3/3]

double MdcSeg::testCombSegPt ( ) const

◆ testCombSegTheta() [1/3]

double MdcSeg::testCombSegTheta ( ) const

Definition at line 427 of file MdcSeg.cxx.

427 {
428 //------------------------------------------------------------------------
429 double truthTheta = -999.;
430 for ( int i = 0; i < nHit(); i++ )
431 {
432 const MdcHit* h = hit( i )->mdcHit();
433 unsigned int l = h->layernumber();
434 unsigned int w = h->wirenumber();
435 if ( haveDigiTheta[l][w] < -998. ) continue;
436 // std::cout<< __FILE__ << " " << __LINE__ << "
437 // haveDigiTheta("<<l<<","<<w<<")"<<haveDigiTheta[l][w]<<std::endl;
438 if ( truthTheta < -998. ) { truthTheta = haveDigiTheta[l][w]; }
439 } // end for
440
441 return truthTheta;
442}
double haveDigiTheta[43][288]

Referenced by MdcSegGrouperAx::incompWithSeg().

◆ testCombSegTheta() [2/3]

double MdcSeg::testCombSegTheta ( ) const

◆ testCombSegTheta() [3/3]

double MdcSeg::testCombSegTheta ( ) const

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