Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

spider::Filament Class Reference

#include <Filament.h>

List of all members.

Public Types

typedef std::map< unsigned
int, const recobase::CellHit * > 
cellmap

Public Member Functions

 Filament ()
 ~Filament ()
const FilamentDaughter (unsigned int i) const
void AddHit (const recobase::CellHit *c)
int HasHit (const recobase::CellHit *c)
int HasHit (unsigned int plane, unsigned int cell)
int HasHit (unsigned int plane, unsigned int cell, int dist)
int HasHit (unsigned int plane, unsigned int cell, int distp, int distc)
float FitDist (unsigned int plane, unsigned int cell)
void AttachFilament (Filament *f)
float DistanceToFilament (Filament *f)
void MergeIntoFilament (Filament *f)
void Geo (geo::View_t a)
void DumpFilament (TH2F *hf)
void Update ()
void Update (unsigned int plane, unsigned int cell)
int BeginFit (int unique)
int EndFit (int unique)
void AddPoint (float t, float z)

Public Attributes

float rotation
std::map< unsigned int, cellmapplanemap
std::vector< Filament * > daughters
int myId
std::vector< float > hitz
std::vector< float > hitt
int uniquez
float endslope
float endoffset
float begslope
float begoffset
unsigned int endplane
unsigned int begplane
unsigned int endcell
unsigned int begcell
float fendplane
float fbegplane
float fendcell
float fbegcell
float endz
float begz
float endt
float begt
float fitendz
float fitbegz
float fitendt
float fitbegt
unsigned int fitendplane
unsigned int fitbegplane
unsigned int fitendcell
unsigned int fitbegcell
int depth
geo::View_t fXY

Static Public Attributes

int filcount = 0

Private Attributes

float maxplane
float minplane
float maxcell
float mincell
float num
float sp
float sp2
float spc
float sc
float slope
float offset
float maxz
float minz
float maxt
float mint
float asp
float asp2
float aspc
float asc
float aslope
float aoffset


Member Typedef Documentation

typedef std::map<unsigned int,const recobase::CellHit*> spider::Filament::cellmap
 

Definition at line 60 of file Filament.h.


Constructor & Destructor Documentation

Filament::Filament  ) 
 

Definition at line 13 of file Filament.cxx.

References filcount, fitbegt, fitbegz, fitendt, fitendz, and myId.

00013                    : 
00014   uniquez(0),
00015   endplane(0), 
00016   begplane(0), 
00017   endcell(0), 
00018   begcell(0), 
00019   endz(0),
00020   begz(0),
00021   endt(0),
00022   begt(0),
00023   depth(0), 
00024   maxplane(0), 
00025   minplane(100000), 
00026   maxcell(0), 
00027   mincell(100000), 
00028   num(0),
00029   slope(0),
00030   offset(0),
00031   maxz(-10000000), 
00032   minz(10000000), 
00033   maxt(-10000000), 
00034   mint(10000000),
00035   aslope(0),
00036   aoffset(0)
00037 {
00038 
00039 fitbegz=fitendz=fitbegt=fitendt=0;
00040 
00041 //      short fDetGeom=1;
00042         //  if (!fGeo)
00043         //fGeo = &geo::Geometry::Instance(spider::runnum, fDetGeom);
00044 myId=filcount++;
00045 
00046 //printf("FIL ID %d \n",myId);
00047 
00048 }

Filament::~Filament  ) 
 

Definition at line 58 of file Filament.cxx.

References daughters.

00059 {
00060 
00061 
00062         std::vector<Filament *>::iterator it=daughters.begin();
00063         while(it!=daughters.end())
00064         {
00065                 it=daughters.erase(it);
00066                 
00067         }
00068 
00069 
00070 
00071 }       


Member Function Documentation

void Filament::AddHit const recobase::CellHit c  ) 
 

Definition at line 83 of file Filament.cxx.

References AddPoint(), begcell, begplane, begt, begz, recobase::CellHit::Cell(), endcell, endplane, endt, endz, fbegcell, fbegplane, fendcell, fendplane, spider::fGeo, num, geo::Geometry::Plane(), recobase::CellHit::Plane(), planemap, and Update().

Referenced by MergeIntoFilament(), spider::WebWalker::SpinHit(), and spider::WebWalker::StickyWeb().

00084 {
00085         planemap[c->Plane()].insert(cellmap::value_type(c->Cell(),c));
00086         
00087 
00088         double pos[3];
00089         try{
00090           fGeo->Plane(c->Plane()).Cell(c->Cell()).GetCenter(pos);
00091         }catch(...){printf("fillament geo error...\n");return;}
00092 
00093         float z=pos[2];
00094         float t=(fGeo->Plane(c->Plane()).View()==geo::kX)?pos[0]:pos[1];
00095 
00096         
00097         if(num==0)
00098         {
00099                 begplane=c->Plane();
00100                 begcell=c->Cell();
00101 
00102                 fbegplane=(float)begplane;
00103                 fbegcell=(float)begcell;
00104 
00105                 begz=z;
00106                 begt=t; 
00107         }
00108         
00109         endplane=c->Plane();
00110         endcell=c->Cell();
00111         fendplane=(float)endplane;
00112         fendcell=(float)endcell;
00113 
00114         endz=z;
00115         endt=t;
00116 
00117 //      printf("ID%d fil (%f %f) - (%f %f)\n",myId,begz,begt,endz,endt);
00118         
00119         AddPoint(t,z);
00120 
00121 //      rotation=(endcell-begcell ==0) ? 180 : 90/3.141592*atan((endplane-begplane)/(endcell-begcell)*5.0/3.0);
00122 
00123         
00124         Update(c->Plane(),c->Cell());
00125 /*
00126 fitbegz=begz;
00127 fitendz=endz;
00128 fitbegt=begt;
00129 fitendt=endt;
00130 */
00131 //        printf("ID%d fitfil (%f %f) - (%f %f)\n",myId,fitbegz,fitbegt,fitendz,fitendt);
00132 
00133 }

void Filament::AddPoint float  t,
float  z
 

Definition at line 135 of file Filament.cxx.

References hitt, hitz, and uniquez.

Referenced by AddHit().

00136 {
00137         uniquez++;
00138 
00139         //can speed up if we are always going in plane order
00140         for(unsigned int i=0;i<hitz.size();i++)
00141         if(hitz[i]==z)
00142         {
00143                 uniquez--;
00144                 break;
00145         }
00146 
00147         hitz.push_back(z);
00148         hitt.push_back(t);
00149 }

void Filament::AttachFilament Filament f  ) 
 

Definition at line 519 of file Filament.cxx.

References daughters.

Referenced by spider::WebWalker::ClumpWeb(), and spider::WebWalker::SpinHit().

00520 {
00521         daughters.push_back(f);
00522 }

int Filament::BeginFit int  unique  ) 
 

Definition at line 239 of file Filament.cxx.

References begoffset, begslope, fitbegt, fitbegz, hitt, hitz, sc, sp, sp2, and spc.

Referenced by Update().

00240 {
00241         if(unique>uniquez)
00242         {
00243                 fitbegz=begz;
00244                 fitbegt=begt;
00245                 return 0;
00246         }
00247 
00248         int curunique=0;
00249         int index=0;
00250         float sp=0;
00251         float sp2=0;
00252         float spc=0;
00253         float sc=0;
00254         int tnum=0;
00255         float lastz=-1;
00256         while(curunique<unique)
00257         {
00258                 tnum++;
00259                 sp+=(hitz[index]-begz);
00260                 sp2+=(hitz[index]-begz)*(hitz[index]-begz);
00261                 spc+=(hitz[index]-begz)*(hitt[index]-begt);
00262                 sc+=(hitt[index]-begt);
00263                 if(lastz!=hitz[index])
00264                 {
00265                         lastz=hitz[index];
00266                         curunique++;
00267                 }
00268                 index++;
00269         }
00270         begslope = (tnum*spc-sp*sc)/(tnum*sp2-sp*sp);
00271         begoffset = (sc*sp2-sp*spc)/(tnum*sp2-sp*sp)+begt;
00272 
00273         fitbegz=begz;
00274         //fitbegt=fitbegz*begslope+begoffset;
00275         fitbegt=begoffset;      
00276 
00277 
00278         return 1;
00279 }

const Filament* spider::Filament::Daughter unsigned int  i  )  const [inline]
 

Definition at line 28 of file Filament.h.

00028 {return daughters[i];};

float Filament::DistanceToFilament Filament f  ) 
 

Definition at line 526 of file Filament.cxx.

References begcell, begplane, endcell, and endplane.

Referenced by spider::WebWalker::ClumpWeb().

00527 {
00528         
00529         float min=1000000;
00530         
00531         float t1=((f->begplane-begplane)*5)^2+((f->begcell-begcell)*3)^2;
00532         float t2=((f->begplane-endplane)*5)^2+((f->begcell-endcell)*3)^2;
00533         float t3=((f->endplane-begplane)*5)^2+((f->endcell-begcell)*3)^2;
00534         float t4=((f->endplane-endplane)*5)^2+((f->endcell-endcell)*3)^2;
00535 
00536         min = (t1 < min) ? t1:min;
00537         min = (t2 < min) ? t2:min;
00538         min = (t3 < min) ? t3:min;
00539         min = (t4 < min) ? t4:min;
00540 
00541         min=sqrt(min);
00542         return min;
00543 
00544 }

void Filament::DumpFilament TH2F *  hf  ) 
 

Definition at line 570 of file Filament.cxx.

References begplane, daughters, endcell, and planemap.

Referenced by spider::WebWalker::DumpWeb().

00571 {
00572         printf("\t fillament with %d attached fillaments starting at (%d %d) ending at (%d %d)\n",daughters.size(),begplane,begcell,endplane,endcell);
00573         
00574 
00575         std::map<unsigned int,cellmap>::iterator pi;
00576         cellmap::iterator ci;
00577         for(pi=planemap.begin();pi!=planemap.end();pi++)
00578         for(ci=pi->second.begin();ci!=pi->second.end();ci++)
00579         printf("(%d %d) ",ci->second->Plane(),ci->second->Cell());
00580         printf("...\n");
00581 
00582         for(std::vector<Filament *>::iterator w = daughters.begin();w!=daughters.end();w++)
00583         {printf("\t\t");(*w)->DumpFilament(hf);}
00584 
00585 
00586         
00587 hf->Fill(begplane,begcell);
00588 hf->Fill(endplane,endcell);
00589 
00590 }

int Filament::EndFit int  unique  ) 
 

Definition at line 151 of file Filament.cxx.

References endoffset, endslope, fitendt, fitendz, hitt, hitz, sc, sp, sp2, and spc.

Referenced by FitDist(), and Update().

00152 {
00153         if(unique>uniquez)
00154         {
00155                 fitendz=endz;
00156                 fitendt=endt;
00157                 return 0;
00158         }
00159 
00160         int curunique=0;
00161         int index=hitz.size()-1;
00162 
00163         float sp=0;
00164         float sp2=0;
00165         float spc=0;
00166         float sc=0;
00167 
00168         int tnum=0;
00169         float lastz=-1;
00170 
00171 
00172 
00173 //get average point in each plance before fiiting
00174 
00175         float avg=1;;
00176         int cnt=0;
00177 
00178         while(curunique<unique)
00179         {
00180                 if(lastz!=hitz[index])
00181                 {  
00182                
00183                         if(cnt>0)
00184                         {
00185                         
00186                         tnum++;
00187                         sp+=(lastz-endz);
00188                         sp2+=(lastz-endz)*(lastz-endz);
00189                         spc+=(lastz-endz)*(avg/cnt-endt);
00190                         sc+=(avg/cnt-endt);
00191                         curunique++;
00192                         }
00193 
00194                         lastz=hitz[index];
00195                        
00196 
00197                         cnt=0;
00198                         avg=0;
00199 
00200                 }
00201 
00202                 avg+=hitt[index];
00203                 cnt++;
00204   
00205                 index--;
00206         }
00207 
00208 
00209 //old way
00210 
00211 /*
00212 
00213 
00214         while(curunique<unique)
00215         {
00216                 tnum++;
00217                 sp+=(hitz[index]-endz);
00218                 sp2+=(hitz[index]-endz)*(hitz[index]-endz);
00219                 spc+=(hitz[index]-endz)*(hitt[index]-endt);
00220                 sc+=(hitt[index]-endt);
00221                 if(lastz!=hitz[index])
00222                 {
00223                         lastz=hitz[index];
00224                         curunique++;
00225                 }
00226                 index--;
00227         }
00228 */
00229         endslope = (tnum*spc-sp*sc)/(tnum*sp2-sp*sp);
00230         endoffset = (sc*sp2-sp*spc)/(tnum*sp2-sp*sp)+endt;
00231 
00232         fitendz=endz;
00233         //fitendt=fitendz*endslope+endoffset;
00234         fitendt=endoffset;
00235 
00236         return 1;
00237 }

float Filament::FitDist unsigned int  plane,
unsigned int  cell
 

Definition at line 307 of file Filament.cxx.

References EndFit(), endslope, spider::fGeo, num, and geo::Geometry::Plane().

Referenced by spider::WebWalker::StickyWeb().

00308 {
00309         if(num<2)return 1000;
00310         
00311         double pos[3];
00312         try{
00313           fGeo->Plane(plane).Cell(cell).GetCenter(pos);
00314         }catch(...){printf("fillament geo error...\n");return 1000;}
00315         float z=pos[2];
00316         float t=(fGeo->Plane(plane).View()==geo::kX)?pos[0]:pos[1];
00317 
00318         EndFit(2);
00319 
00320         float diff = t - (endslope*(z-endz)+endoffset);
00321 
00322         return (diff>0)?diff:-diff;
00323 }

void Filament::Geo geo::View_t  a  ) 
 

Definition at line 76 of file Filament.cxx.

References daughters, and fXY.

00077 {       
00078         fXY=a;
00079         for(unsigned int i=0;i<daughters.size();i++)
00080         daughters[i]->Geo(a);
00081 }

int Filament::HasHit unsigned int  plane,
unsigned int  cell,
int  distp,
int  distc
 

Definition at line 491 of file Filament.cxx.

References HasHit(), and planemap.

00492 {
00493 
00494 
00495 
00496         if(planemap.size()>0)
00497         for(int p=-distp;p<=distp;p++)
00498         for(int c=-distc;c<=distc;c++)
00499         {
00500                 if((p+(int)plane)<0||(c+(int)cell)<0)continue;
00501                 if(HasHit(((int)plane+p),((int)cell+c)))return (p<0?-p:p)*5+(c<0?-c:c)*3;
00502         }
00503         return 0;
00504 
00505 
00506 /*
00507         if(planemap.size()>0)
00508         for(int p=-dist;p<=dist;p++)
00509         for(int c=-(dist-(p<0?-p:p));c<=(dist-(c<0?-c:c));c++)
00510         {
00511                 if((p+(int)plane)<0||(c+(int)cell)<0)continue;
00512                 if(HasHit(((int)plane+p),((int)cell+c)))return (p<0?-p:p)+(c<0?-c:c);
00513         }
00514         return 0;
00515 */
00516 }

int Filament::HasHit unsigned int  plane,
unsigned int  cell,
int  dist
 

Definition at line 481 of file Filament.cxx.

References HasHit().

00482 {
00483 
00484 return HasHit(plane, cell, dist/5, dist/3);
00485 
00486 }

int Filament::HasHit unsigned int  plane,
unsigned int  cell
 

Definition at line 282 of file Filament.cxx.

References planemap.

00283 {
00284 
00285 //printf("looking for hit %d %d \n",plane,cell);
00286 
00287 //const recobase::CellHit * f= planemap.find(plane)->second.find(cell)->second;
00288 
00289 
00290 
00291 
00292 if(planemap.find(plane)!=planemap.end())
00293 if(planemap.find(plane)->second.find(cell)!=planemap.find(plane)->second.end())
00294 {
00295 const recobase::CellHit * f= planemap.find(plane)->second.find(cell)->second;
00296 //printf("- %d -",planemap.find(plane)->second.find(cell)->first);
00297 //printf("add %d\n", f) ;
00298 if( f!= 0)return 1; 
00299 }
00300 
00301 
00302 
00303 return 0;
00304 }

int Filament::HasHit const recobase::CellHit c  ) 
 

Definition at line 281 of file Filament.cxx.

References recobase::CellHit::Cell(), and recobase::CellHit::Plane().

Referenced by HasHit(), and spider::WebWalker::SpinHit().

00281 {return HasHit(c->Plane(), c->Cell());}

void Filament::MergeIntoFilament Filament f  ) 
 

Definition at line 547 of file Filament.cxx.

References AddHit(), daughters, and planemap.

Referenced by spider::WebWalker::ClumpWeb().

00548 {
00549         
00550         for(unsigned int i=0;i<daughters.size();i++)
00551         {
00552                 daughters[i]->MergeIntoFilament(this);
00553         }
00554         
00555         daughters.clear();
00556       
00557         std::map<unsigned int,cellmap>::iterator pi;
00558         cellmap::iterator ci;
00559         for(pi=planemap.begin();pi!=planemap.end();pi++)
00560         for(ci=pi->second.begin();ci!=pi->second.end();ci++)
00561         f->AddHit(ci->second);
00562 
00563 }

void Filament::Update unsigned int  plane,
unsigned int  cell
 

Definition at line 325 of file Filament.cxx.

References aslope, begcell, BeginFit(), endcell, EndFit(), spider::fGeo, maxcell, maxplane, maxt, maxz, mincell, minplane, mint, minz, num, geo::Geometry::Plane(), and rotation.

00326 {
00327 
00328         float fplane=(float)plane;
00329         float fcell=(float)cell;
00330 
00331         maxplane = (fplane < maxplane) ? maxplane : fplane;
00332         minplane = (fplane > minplane) ? minplane : fplane;
00333         maxcell = (fcell < maxcell) ? maxcell : fcell;
00334         mincell = (fcell > mincell) ? mincell : fcell;
00335 
00336         num+=1;
00337 /*
00338         sp+=(fplane-fbegplane);
00339         sp2+=(fplane-fbegplane)*(fplane-fbegplane);
00340         spc+=(fplane-fbegplane)*(fcell-fbegcell);
00341         sc+=(fcell-fbegcell);
00342 
00343         printf("ID%d %f %f %f %f\n",myId,sp,sp2,spc,sc);
00344         printf("ID%d %f %f %f %f\n",myId,(fplane-fbegplane),(fplane-fbegplane)*(fplane-fbegplane),(fplane-fbegplane)*(fcell-fbegcell),(fcell-fbegcell));
00345 
00346 */
00347         double pos[3];
00348         try{
00349           fGeo->Plane(plane).Cell(cell).GetCenter(pos);
00350         }catch(...){printf("fillament geo error...\n");return;}
00351         float z=pos[2];
00352         float t=(fGeo->Plane(plane).View()==geo::kX)?pos[0]:pos[1];
00353 /*
00354         asp+=(z-begz);
00355         asp2+=(z-begz)*(z-begz);
00356         aspc+=(z-begz)*(t-begt);
00357         asc+=(t-begt);
00358 */
00359         maxz = (z < maxz) ? maxz : z;
00360         minz = (z > minz) ? minz : z;
00361         maxt = (t < maxt) ? maxt : t;
00362         mint = (t > mint) ? mint : t;
00363 
00364 /*
00365         fitbegz=begz;
00366         fitbegt=begt;
00367         fitendz=endz;
00368         fitendt=endt;
00369 */
00370 //      printf("ID%d added (%f %f), (%u %u)\n",myId,z,t,plane,cell);
00371 //      Update();
00372 
00373         rotation=(endcell-begcell ==0) ? 180 : 90/3.141592*atan(aslope);
00374 BeginFit(3);
00375 EndFit(3);
00376 
00377 //        printf("ID%d Updating with %d %d\n",myId,plane,cell);
00378 
00379 }

void Filament::Update  ) 
 

Definition at line 381 of file Filament.cxx.

References aoffset, asc, aslope, asp, asp2, aspc, begz, fbegcell, fbegplane, fendcell, fendplane, fitbegcell, fitbegplane, fitbegt, fitbegz, fitendcell, fitendplane, fitendt, fitendz, maxt, maxz, mint, minz, num, offset, sc, slope, sp, sp2, and spc.

Referenced by AddHit().

00382 {
00383 
00384         //if(num<3)return;
00385 
00386         slope=0;
00387         offset=0;
00388         
00389         if(num*sp2-sp*sp!=0)
00390         {
00391 
00392                 slope = (num*spc-sp*sc)/(num*sp2-sp*sp);
00393                 offset = (sc*sp2-sp*spc)/(num*sp2-sp*sp)+(float)begcell;
00394         }
00395 //      else
00396 //      {
00397 //              slope = std::numeric_limits<float>::infinity();
00398 //      }
00399 
00400         //if(slope!=0&&slope<100)
00401         //{
00402                 fbegplane=minplane;
00403                 fbegcell=(minplane)*slope+offset;
00404                 fendplane=(maxplane);
00405                 fendcell=(maxplane)*slope+offset;
00406         /*}
00407         else
00408         {
00409         //      begplane=(unsigned int)minplane;
00410         //      endplane=(unsigned int)maxplane;
00411                 begcell=(unsigned int)mincell;
00412                 endcell=(unsigned int)maxcell;
00413         }
00414 */
00415         if(fbegplane==fendplane)
00416         {
00417                 fbegcell=mincell;
00418                 fendcell=maxcell;
00419         }
00420 
00421 //      if((int)(begcell)<0)begcell=0;
00422 //      if((int)(endcell)<0)endcell=0;
00423 
00424         fitbegcell=(unsigned int)fbegcell;
00425         fitendcell=(unsigned int)fendcell;
00426         fitbegplane=(unsigned int)fbegplane;
00427         fitendplane=(unsigned int)fendplane;
00428 
00429         //printf("ID%d   slope %f off %f b(%u %u) e(%u %u) min(%f %f) max (%f %f) num%f\n",myId,slope, offset,begplane,begcell,endplane,endcell,mincell,minplane,maxcell,maxplane,num);
00430 
00431 
00432         aslope=0;
00433         aoffset=0;
00434 
00435 
00436 
00437         if(num*asp2-asp*asp!=0)
00438         {
00439 
00440                 aslope = (num*aspc-asp*asc)/(num*asp2-asp*asp);
00441                 aoffset = (asc*asp2-asp*aspc)/(num*asp2-asp*asp)+begt;
00442         
00443         }
00444 
00445         //if(aslope!=0)//&&aslope<100)
00446        // {
00447          /*       fitbegz=minz;
00448                 fitbegt=(begz*begslope+aoffset);
00449                 fitendz=maxz;
00450                 fitendt=endoffset;
00451        */ /*}
00452         else
00453         {
00454                 
00455         //        begz=minz;
00456           //      endz=maxz;
00457                 begt=mint;
00458                 endt=maxt;
00459         }
00460 */
00461 
00462         if(begz==endz) //straight verticle line
00463         {
00464                 fitbegt=maxt;
00465                 fitendt=mint;
00466         }       
00467        
00468         fitbegz=(fitbegz>maxz)?maxz:fitbegz; 
00469         fitbegz=(fitbegz<minz)?minz:fitbegz;
00470         fitendz=(fitendz>maxz)?maxz:fitendz;
00471         fitendz=(fitendz<minz)?minz:fitendz;
00472         fitbegt=(fitbegt>maxt)?maxt:fitbegt;
00473         fitbegt=(fitbegt<mint)?mint:fitbegt;
00474         fitendt=(fitendt>maxt)?maxt:fitendt;
00475         fitendt=(fitendt<mint)?mint:fitendt;
00476 
00477         //printf("ID%d   slope %f off %f b(%f %f) e(%f %f) min(%f %f) max(%f %f) num%f\n",myId,aslope, aoffset,begz,begt,endz,endt,minz,mint,maxz,maxt,num);
00478 
00479 }


Member Data Documentation

float spider::Filament::aoffset [private]
 

Definition at line 159 of file Filament.h.

Referenced by Update().

float spider::Filament::asc [private]
 

Definition at line 156 of file Filament.h.

Referenced by Update().

float spider::Filament::aslope [private]
 

Definition at line 158 of file Filament.h.

Referenced by Update().

float spider::Filament::asp [private]
 

Definition at line 153 of file Filament.h.

Referenced by Update().

float spider::Filament::asp2 [private]
 

Definition at line 154 of file Filament.h.

Referenced by Update().

float spider::Filament::aspc [private]
 

Definition at line 155 of file Filament.h.

Referenced by Update().

unsigned int spider::Filament::begcell
 

Definition at line 91 of file Filament.h.

Referenced by AddHit(), DistanceToFilament(), spider::SpiderWeb::IterPut(), spider::WebWalker::StickyWeb(), and Update().

float spider::Filament::begoffset
 

Definition at line 86 of file Filament.h.

Referenced by BeginFit().

unsigned int spider::Filament::begplane
 

Definition at line 89 of file Filament.h.

Referenced by AddHit(), spider::WebWalker::ClumpWeb(), DistanceToFilament(), DumpFilament(), spider::SpiderWeb::IterPut(), and spider::WebWalker::StickyWeb().

float spider::Filament::begslope
 

Definition at line 85 of file Filament.h.

Referenced by BeginFit().

float spider::Filament::begt
 

Definition at line 102 of file Filament.h.

Referenced by AddHit().

float spider::Filament::begz
 

Definition at line 100 of file Filament.h.

Referenced by AddHit(), and Update().

std::vector<Filament *> spider::Filament::daughters
 

Definition at line 63 of file Filament.h.

Referenced by AttachFilament(), DumpFilament(), Geo(), spider::SpiderWeb::IterPut(), MergeIntoFilament(), and ~Filament().

int spider::Filament::depth
 

Definition at line 118 of file Filament.h.

Referenced by spider::SpiderWeb::IterPut().

unsigned int spider::Filament::endcell
 

Definition at line 90 of file Filament.h.

Referenced by AddHit(), DistanceToFilament(), DumpFilament(), spider::SpiderWeb::IterPut(), spider::WebWalker::StickyWeb(), and Update().

float spider::Filament::endoffset
 

Definition at line 84 of file Filament.h.

Referenced by EndFit().

unsigned int spider::Filament::endplane
 

Definition at line 88 of file Filament.h.

Referenced by AddHit(), DistanceToFilament(), spider::SpiderWeb::IterPut(), and spider::WebWalker::StickyWeb().

float spider::Filament::endslope
 

Definition at line 83 of file Filament.h.

Referenced by EndFit(), and FitDist().

float spider::Filament::endt
 

Definition at line 101 of file Filament.h.

Referenced by AddHit().

float spider::Filament::endz
 

Definition at line 99 of file Filament.h.

Referenced by AddHit().

float spider::Filament::fbegcell
 

Definition at line 96 of file Filament.h.

Referenced by AddHit(), and Update().

float spider::Filament::fbegplane
 

Definition at line 94 of file Filament.h.

Referenced by AddHit(), and Update().

float spider::Filament::fendcell
 

Definition at line 95 of file Filament.h.

Referenced by AddHit(), and Update().

float spider::Filament::fendplane
 

Definition at line 93 of file Filament.h.

Referenced by AddHit(), and Update().

int Filament::filcount = 0 [static]
 

Definition at line 9 of file Filament.cxx.

Referenced by Filament().

unsigned int spider::Filament::fitbegcell
 

Definition at line 115 of file Filament.h.

Referenced by Update().

unsigned int spider::Filament::fitbegplane
 

Definition at line 113 of file Filament.h.

Referenced by Update().

float spider::Filament::fitbegt
 

Definition at line 109 of file Filament.h.

Referenced by BeginFit(), Filament(), spider::SpiderWeb::IterPut(), and Update().

float spider::Filament::fitbegz
 

Definition at line 107 of file Filament.h.

Referenced by BeginFit(), Filament(), spider::SpiderWeb::IterPut(), and Update().

unsigned int spider::Filament::fitendcell
 

Definition at line 114 of file Filament.h.

Referenced by Update().

unsigned int spider::Filament::fitendplane
 

Definition at line 112 of file Filament.h.

Referenced by Update().

float spider::Filament::fitendt
 

Definition at line 108 of file Filament.h.

Referenced by EndFit(), Filament(), spider::SpiderWeb::IterPut(), and Update().

float spider::Filament::fitendz
 

Definition at line 106 of file Filament.h.

Referenced by EndFit(), Filament(), spider::SpiderWeb::IterPut(), and Update().

geo::View_t spider::Filament::fXY
 

Definition at line 120 of file Filament.h.

Referenced by Geo().

std::vector<float> spider::Filament::hitt
 

Definition at line 79 of file Filament.h.

Referenced by AddPoint(), BeginFit(), and EndFit().

std::vector<float> spider::Filament::hitz
 

Definition at line 78 of file Filament.h.

Referenced by AddPoint(), BeginFit(), and EndFit().

float spider::Filament::maxcell [private]
 

Definition at line 133 of file Filament.h.

Referenced by Update().

float spider::Filament::maxplane [private]
 

Definition at line 131 of file Filament.h.

Referenced by Update().

float spider::Filament::maxt [private]
 

Definition at line 148 of file Filament.h.

Referenced by Update().

float spider::Filament::maxz [private]
 

Definition at line 146 of file Filament.h.

Referenced by Update().

float spider::Filament::mincell [private]
 

Definition at line 134 of file Filament.h.

Referenced by Update().

float spider::Filament::minplane [private]
 

Definition at line 132 of file Filament.h.

Referenced by Update().

float spider::Filament::mint [private]
 

Definition at line 149 of file Filament.h.

Referenced by Update().

float spider::Filament::minz [private]
 

Definition at line 147 of file Filament.h.

Referenced by Update().

int spider::Filament::myId
 

Definition at line 69 of file Filament.h.

Referenced by Filament().

float spider::Filament::num [private]
 

Definition at line 136 of file Filament.h.

Referenced by AddHit(), FitDist(), and Update().

float spider::Filament::offset [private]
 

Definition at line 144 of file Filament.h.

Referenced by Update().

std::map<unsigned int,cellmap> spider::Filament::planemap
 

Definition at line 61 of file Filament.h.

Referenced by AddHit(), DumpFilament(), HasHit(), and MergeIntoFilament().

float spider::Filament::rotation
 

Definition at line 50 of file Filament.h.

Referenced by spider::WebWalker::ClumpWeb(), and Update().

float spider::Filament::sc [private]
 

Definition at line 141 of file Filament.h.

Referenced by BeginFit(), EndFit(), and Update().

float spider::Filament::slope [private]
 

Definition at line 143 of file Filament.h.

Referenced by Update().

float spider::Filament::sp [private]
 

Definition at line 138 of file Filament.h.

Referenced by BeginFit(), EndFit(), and Update().

float spider::Filament::sp2 [private]
 

Definition at line 139 of file Filament.h.

Referenced by BeginFit(), EndFit(), and Update().

float spider::Filament::spc [private]
 

Definition at line 140 of file Filament.h.

Referenced by BeginFit(), EndFit(), and Update().

int spider::Filament::uniquez
 

Definition at line 80 of file Filament.h.

Referenced by AddPoint().


The documentation for this class was generated from the following files:
Generated on Sun Nov 22 04:45:33 2009 for NOvA Offline by  doxygen 1.3.9.1