#include <TrkHotListEmpty.h>
Inheritance diagram for TrkHotListEmpty:
Public Types | |
typedef TrkHitOnTrkIter< TrkHotList::const_iterator_traits > | hot_iterator |
typedef TrkHitOnTrkIter< TrkHotList::const_iterator_traits > | hot_iterator |
typedef TrkHitOnTrkIter< TrkHotList::iterator_traits > | nc_hot_iterator |
typedef TrkHitOnTrkIter< TrkHotList::iterator_traits > | nc_hot_iterator |
Public Member Functions | |
virtual void | append (TrkHitOnTrk *) |
virtual void | append (TrkHitOnTrk *) |
nc_hot_iterator | begin () |
hot_iterator | begin () const |
nc_hot_iterator | begin () |
hot_iterator | begin () const |
virtual TrkHotList * | clone (TrkBase::Functors::cloneHot) const |
virtual TrkHotList * | clone (TrkBase::Functors::cloneHot) const |
nc_hot_iterator | end () |
hot_iterator | end () const |
nc_hot_iterator | end () |
hot_iterator | end () const |
virtual double | endFoundRange () const |
virtual double | endFoundRange () const |
TrkHitOnTrk * | findHot (const TrkFundHit *) const |
TrkHitOnTrk * | findHot (const TrkFundHit *) const |
virtual unsigned | firstMdcLayer () const |
virtual unsigned | firstMdcLayer () const |
virtual bool | hasSvtView (TrkEnums::TrkViewInfo view, int layer) const |
virtual bool | hasSvtView (TrkEnums::TrkViewInfo view, int layer) const |
virtual bool | hitCapable () const |
virtual bool | hitCapable () const |
virtual bool | isActive (unsigned ihot) const |
virtual bool | isActive (unsigned ihot) const |
virtual unsigned | lastMdcLayer () const |
virtual unsigned | lastMdcLayer () const |
virtual int | nActive (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nActive (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nHit (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nHit (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nMdc (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nMdc (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nSvt (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
virtual int | nSvt (TrkEnums::TrkViewInfo view=TrkEnums::bothView) const |
TrkHotListEmpty & | operator= (const TrkHotList &) |
TrkHotListEmpty & | operator= (const TrkHotList &) |
void | print (std::ostream &o) const |
void | print (std::ostream &o) const |
void | printAll (std::ostream &o) const |
void | printAll (std::ostream &o) const |
virtual void | remove (TrkHitOnTrk *) |
virtual void | remove (TrkHitOnTrk *) |
virtual TrkHotList * | resetParent (TrkBase::Functors::setParent) |
virtual TrkHotList * | resetParent (TrkBase::Functors::setParent) |
virtual void | sort () |
virtual void | sort () |
virtual double | startFoundRange () const |
virtual double | startFoundRange () const |
virtual TrkView | svtView (int layer) const |
virtual TrkView | svtView (int layer) const |
TrkHotListEmpty (const TrkHotList &other) | |
TrkHotListEmpty (unsigned nPhi, unsigned nZ, unsigned nAxial, unsigned nStereo, double startFoundRange, double endFoundRange, unsigned firstmdclay, unsigned lastmdclay, TrkView svtpattern[5], const std::vector< unsigned > &inactive) | |
TrkHotListEmpty (int nActive, int nSvt, int nMdc, double startFoundRange, double endFoundRange) | |
TrkHotListEmpty (const TrkHotList &other) | |
TrkHotListEmpty (unsigned nPhi, unsigned nZ, unsigned nAxial, unsigned nStereo, double startFoundRange, double endFoundRange, unsigned firstmdclay, unsigned lastmdclay, TrkView svtpattern[5], const std::vector< unsigned > &inactive) | |
TrkHotListEmpty (int nActive, int nSvt, int nMdc, double startFoundRange, double endFoundRange) | |
virtual void | updateHots () |
virtual void | updateHots () |
virtual | ~TrkHotListEmpty () |
virtual | ~TrkHotListEmpty () |
Protected Types | |
typedef std::vector< TrkHitOnTrk * > | hotlist_t |
typedef std::vector< TrkHitOnTrk * > | hotlist_t |
Protected Member Functions | |
virtual std::vector< TrkHitOnTrk * > & | hotlist () |
virtual const std::vector< TrkHitOnTrk * > & | hotlist () const |
virtual std::vector< TrkHitOnTrk * > & | hotlist () |
virtual const std::vector< TrkHitOnTrk * > & | hotlist () const |
Private Member Functions | |
void | setInactive (std::vector< unsigned > &inactive) |
void | setInactive (std::vector< unsigned > &inactive) |
TrkHotListEmpty (const TrkHotListEmpty &rhs) | |
TrkHotListEmpty (const TrkHotListEmpty &rhs) | |
Private Attributes | |
double | _endFndRng |
unsigned | _firstmdc |
std::vector< unsigned > | _inactive |
std::vector< unsigned > | _inactive |
unsigned | _lastmdc |
unsigned | _nAxial |
unsigned | _nPhi |
unsigned | _nStereo |
unsigned | _nZ |
double | _stFndRng |
TrkView | _svtpat [5] |
Friends | |
struct | const_iterator_traits |
struct | iterator_traits |
class | KalMiniTrkK |
|
|
|
|
|
|
|
|
|
|
|
|
|
00022 { 00023 _nPhi = nsv/2; _nZ = nsv-_nPhi; 00024 _nAxial = ndc/3; _nStereo = ndc-_nAxial; 00025 _stFndRng = sfr; 00026 _endFndRng = efr; 00027 _firstmdc = _lastmdc = 0; 00028 for(unsigned isvt=0;isvt<5;isvt++) 00029 _svtpat[isvt] = TrkView(TrkEnums::noView); 00030 }
|
|
00037 : 00038 _nAxial(nAxial),_nStereo(nStereo),_nPhi(nPhi),_nZ(nZ), 00039 _stFndRng(sfr),_endFndRng(efr),_firstmdc(firstmdc),_lastmdc(lastmdc), 00040 _inactive(inactive) 00041 { 00042 for(unsigned j=0;j<5;j++) 00043 _svtpat[j] = svtpattern[j]; 00044 }
|
|
00096 : 00097 _nAxial(other.nMdc(TrkEnums::xyView)), 00098 _nStereo(other.nMdc(TrkEnums::zView)), 00099 _nPhi(other.nSvt(TrkEnums::xyView)), 00100 _nZ(other.nSvt(TrkEnums::zView)), 00101 _stFndRng(other.startFoundRange()), 00102 _endFndRng(other.endFoundRange()), 00103 _firstmdc(other.firstMdcLayer()), 00104 _lastmdc(other.lastMdcLayer()) 00105 { 00106 for(unsigned ilay=0;ilay<5;ilay++) 00107 _svtpat[ilay] = other.svtView(ilay+1);// layer numbering starts at 1 00108 unsigned nhit = other.nHit(); 00109 for(unsigned ihit=0;ihit<nhit;ihit++) 00110 if(!isActive(ihit)) 00111 _inactive.push_back(ihit); 00112 }
|
|
00087 { 00088 }
|
|
00047 { 00048 _nAxial = rhs._nAxial; 00049 _nStereo = rhs._nStereo; 00050 _nPhi = rhs._nPhi; 00051 _nZ = rhs._nZ; 00052 _stFndRng = rhs._stFndRng; 00053 _endFndRng = rhs._endFndRng; 00054 _firstmdc = rhs._firstmdc; 00055 _lastmdc = rhs._lastmdc; 00056 _inactive = rhs._inactive; 00057 for (unsigned i=0;i<5;++i) _svtpat[i] = rhs._svtpat[i]; 00058 00059 }
|
|
|
|
|
|
|
|
|
|
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00193 { 00194 }
|
|
00048 { return nc_hot_iterator(hotlist().begin()); }
|
|
00044 { return hot_iterator(hotlist().begin()); }
|
|
00048 { return nc_hot_iterator(hotlist().begin()); }
|
|
00044 { return hot_iterator(hotlist().begin()); }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00092 { 00093 return new TrkHotListEmpty(*this); 00094 }
|
|
00049 { return nc_hot_iterator(hotlist().end()); }
|
|
00045 { return hot_iterator(hotlist().end()); }
|
|
00049 { return nc_hot_iterator(hotlist().end()); }
|
|
00045 { return hot_iterator(hotlist().end()); }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00169 {
00170 return _endFndRng;
00171 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00203 {
00204 return 0;
00205 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00227 {
00228 return _firstmdc;
00229 }
|
|
|
|
00057 { 00058 TrkView need(view); 00059 TrkView have = svtView(layer); 00060 return have.contains(need); 00061 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00209 { 00210 return false; 00211 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. |
|
Implements TrkHotList. 00185 { 00186 static std::vector<TrkHitOnTrk*> dummy; 00187 assert(dummy.empty()); 00188 return dummy; 00189 }
|
|
Implements TrkHotList. 00176 { 00177 static const std::vector<TrkHitOnTrk*> dummy; 00178 assert(dummy.empty()); 00179 return dummy; 00180 00181 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00238 { 00239 std::vector<unsigned>::const_iterator ifound = 00240 std::find(_inactive.begin(),_inactive.end(),ihot); 00241 return ifound == _inactive.end(); 00242 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00233 {
00234 return _lastmdc;
00235 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList.
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00152 { 00153 unsigned nhit = nActive(view); 00154 if(view == TrkEnums::bothView) 00155 nhit += _inactive.size(); 00156 else 00157 nhit += _inactive.size()/2; 00158 return nhit; 00159 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00137 { 00138 switch (view) { 00139 case TrkEnums::zView: 00140 return _nStereo; 00141 case TrkEnums::xyView: 00142 return _nAxial; 00143 case TrkEnums::bothView: 00144 return _nStereo + _nAxial; 00145 default: 00146 return -1; 00147 } 00148 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00122 { 00123 switch (view) { 00124 case TrkEnums::bothView: 00125 return _nPhi + _nZ; 00126 case TrkEnums::xyView: 00127 return _nPhi; 00128 case TrkEnums::zView: 00129 return _nZ; 00130 default: 00131 return -1; 00132 } 00133 }
|
|
Reimplemented from TrkHotList. |
|
Reimplemented from TrkHotList. 00063 { 00064 if(this != &other){ 00065 _nPhi = other.nSvt(TrkEnums::xyView); 00066 _nZ = other.nSvt(TrkEnums::zView); 00067 _nAxial = other.nMdc(TrkEnums::xyView); 00068 _nStereo = other.nMdc(TrkEnums::zView); 00069 _stFndRng = other.startFoundRange(); 00070 _endFndRng = other.endFoundRange(); 00071 _firstmdc = other.firstMdcLayer(); 00072 _lastmdc = other.lastMdcLayer(); 00073 for(unsigned ilay=0;ilay<5;ilay++) 00074 _svtpat[ilay] = other.svtView(ilay+1);// layer numbering starts at 1 00075 unsigned nhits = other.nHit(); 00076 std::vector<unsigned> inactive; 00077 for(unsigned ihit=0;ihit<nhits;ihit++) 00078 if(!other.isActive(ihit)) 00079 inactive.push_back(ihit); 00080 _inactive = inactive; 00081 } 00082 return *this; 00083 }
|
|
|
|
00032 { 00033 o << " hitCapable: " << (hitCapable()?"yes":"no") 00034 << " nActive: " << nActive() 00035 << " nHit: " << nHit() 00036 << " startFoundRange: " <<startFoundRange() 00037 << " endFoundRange: " << endFoundRange(); 00038 }
|
|
|
|
00042 { 00043 print(o); o << "\n"; 00044 TrkHotList::hot_iterator i= begin(); 00045 int kk=0; 00046 while (i!=end()) { 00047 kk++; 00048 std::cout<< kk << ":" ; 00049 i->print(o); o << endl; 00050 i->hit()->printAll(o);//yzhang debug 00051 i++; 00052 } 00053 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00198 { 00199 }
|
|
|
|
|
|
00076 { 00077 _inactive = inactive; }
|
|
00076 { 00077 _inactive = inactive; }
|
|
|
|
00072 { 00073 std::sort(hotlist().begin(), 00074 hotlist().end(), 00075 bes::Collection::PtrLess()); 00076 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00163 {
00164 return _stFndRng;
00165 }
|
|
Implements TrkHotList. |
|
Implements TrkHotList.
|
|
Implements TrkHotList. |
|
Implements TrkHotList. 00215 {
00216 return;
00217 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|