15   const unsigned int NTHits = iHits.size();
 
   16   float_m active = mask;
 
   17   if( active.isEmpty() ) 
return active;
 
   19   vector<PndCAHitV> thits( NTHits );
 
   20   for ( 
unsigned int ihit = 0; ihit < NTHits; ihit++ ) {
 
   22     if (!dir) index = iHits[NTHits-1-ihit];
 
   25     foreach_bit(
unsigned int iV, active) {
 
   26       hs[iV] = hits[index.
s[iV]][index.
e[iV]];
 
   45   for ( 
unsigned int ihit = 0; ihit < NTHits; ihit++ ) {
 
   46     if( active.isEmpty() ) 
break;
 
   48     active &= param.
Transport( hit, caParam, active );
 
   49    if( active.isEmpty() ) 
break;
 
   50     active &= param.
Filter( hit, caParam, active );
 
   58   float_m active = mask;
 
   61   float_v qMom = float_v(10e10f);
 
   64   while ( (++i < 10) && ( abs( (param.
QMomentum() - qMom)/qMom ) > 0.005f ) ) { 
 
   66     if( active.isEmpty() ) 
break;
 
   67     active &= 
FitIteration( caParam, hits, param, iHits, target, dir, 
false, active );
 
   70 #else // for Panda it is and slower, since doesn't use target z-coor? 
   71   active &= 
FitIteration( caParam, hits, param, iHits, target, dir, 
false, active );
 
   72   while ( (++i < 5) && ( abs( (param.
QMomentum() - qMom)/qMom ) > 0.005f ) ) {
 
   74     active &= 
FitIteration( caParam, hits, param, iHits, target, !dir, 
true, active );
 
   75     active &= 
FitIteration( caParam, hits, param, iHits, target, dir, 
true, active );
 
float_m Fit(const PndCAParam &caParam, const PndCAHits &hits, PndCATrackParamVector ¶m, const vector< PndCATESV > &iHits, const PndCATarget &target, bool dir, const float_m &active=float_m(true))
void InitByTarget(const PndCATarget &target)
void SetAngle(const float_v &v)
float_m FitIteration(const PndCAParam &caParam, const PndCAHits &hits, PndCATrackParamVector ¶m, const vector< PndCATESV > &iHits, const PndCATarget &target, bool dir, bool useParam, const float_m &active=float_m(true))
float_m Filter(const PndCAHitV &hit, const PndCAParam ¶m, const float_m &mask=float_m(true), const float_v &chi2Cut=10e10f)
void InitCovMatrix(float_v d2QMom=0.f)
float_v QMomentum() const 
void InitDirection(float_v r0, float_v r1, float_v r2)
void SetQMomentum(const float_v &v)
float_m Transport(const int_v &ista, const PndCAParam ¶m, const float_m &mask=float_m(true))