EmcRecNeighbor Class Reference

#include <EmcRecNeighbor.h>

List of all members.

Public Member Functions

 EmcRecNeighbor ()
 ~EmcRecNeighbor ()
bool IsNeighbor (const Identifier &id1, const Identifier &id2)
bool IsNextNeighbor (const Identifier &id1, const Identifier &id2)
RecEmcIDVector GetNeighbors (const Identifier &id)
RecEmcIDVector GetNextNeighbors (const Identifier &id)


Detailed Description

Definition at line 11 of file EmcRecNeighbor.h.


Constructor & Destructor Documentation

EmcRecNeighbor::EmcRecNeighbor (  ) 

Definition at line 11 of file EmcRecNeighbor.cxx.

00012 {}

EmcRecNeighbor::~EmcRecNeighbor (  ) 

Definition at line 14 of file EmcRecNeighbor.cxx.

00015 {}


Member Function Documentation

RecEmcIDVector EmcRecNeighbor::GetNeighbors ( const Identifier id  ) 

Definition at line 54 of file EmcRecNeighbor.cxx.

References EmcID::barrel_ec(), EmcID::crystal_id(), EmcID::getBARREL(), EmcID::getENDCAP_EAST(), EmcID::getENDCAP_WEST(), EmcID::getPHI_BARREL_MAX(), EmcID::getPHI_BARREL_MIN(), EmcID::getPHI_ENDCAP_MAX(), EmcID::getPHI_ENDCAP_MIN(), EmcID::getTHETA_BARREL_MAX(), EmcID::getTHETA_BARREL_MIN(), EmcID::getTHETA_ENDCAP_MAX(), EmcID::getTHETA_ENDCAP_MIN(), phi1, EmcID::phi_module(), and EmcID::theta_module().

Referenced by EmcRecHit2Cluster::Convert(), EmcRecShowerEnergy::Energy(), GetNextNeighbors(), IsNeighbor(), main(), EmcRecSeedLocalMax::Seed(), and EmcRecSeedEThreshold::Seed().

00055 {
00056   unsigned int barrel_ec=EmcID::barrel_ec(id);
00057   unsigned int theta=EmcID::theta_module(id);
00058   unsigned int phi=EmcID::phi_module(id);
00059    
00060   RecEmcID aNb;
00061   RecEmcIDVector NeighborVec;
00062    
00063   NeighborVec.clear();
00064    
00065   if(barrel_ec==EmcID::getBARREL()) {
00066     unsigned int phip=999;
00067     unsigned int phin=999;
00068     if(phi==EmcID::getPHI_BARREL_MIN()) {
00069       phip=EmcID::getPHI_BARREL_MAX();
00070       phin=phi+1;
00071     }
00072     if(phi==EmcID::getPHI_BARREL_MAX()) {
00073       phip=phi-1;
00074       phin=EmcID::getPHI_BARREL_MIN();
00075     }
00076     if((phi>EmcID::getPHI_BARREL_MIN()) &&
00077                  (phi<EmcID::getPHI_BARREL_MAX())) {
00078       phip=phi-1;
00079       phin=phi+1;
00080     }
00081       
00082     aNb=EmcID::crystal_id(barrel_ec,theta,phip);
00083     NeighborVec.push_back(aNb);
00084     aNb=EmcID::crystal_id(barrel_ec,theta,phin);
00085     NeighborVec.push_back(aNb);
00086       
00087     if((theta==EmcID::getTHETA_BARREL_MIN()) || (theta==EmcID::getTHETA_BARREL_MAX())) {
00088       unsigned int east_west=0;
00089       if(theta==EmcID::getTHETA_BARREL_MIN()) {   //theta=0
00090         aNb=EmcID::crystal_id(barrel_ec,theta+1,phip);
00091         NeighborVec.push_back(aNb);
00092         aNb=EmcID::crystal_id(barrel_ec,theta+1,phi);
00093         NeighborVec.push_back(aNb);
00094         aNb=EmcID::crystal_id(barrel_ec,theta+1,phin);
00095         NeighborVec.push_back(aNb);
00096         east_west=EmcID::getENDCAP_EAST();
00097       } else {                                    //theta=43
00098         aNb=EmcID::crystal_id(barrel_ec,theta-1,phip);
00099         NeighborVec.push_back(aNb);
00100         aNb=EmcID::crystal_id(barrel_ec,theta-1,phi);
00101         NeighborVec.push_back(aNb);
00102         aNb=EmcID::crystal_id(barrel_ec,theta-1,phin);
00103         NeighborVec.push_back(aNb);
00104         east_west=EmcID::getENDCAP_WEST();
00105       }
00106       //neighbors in endcap
00107       unsigned int phi1=phi*(EmcID::getPHI_ENDCAP_MAX(EmcID::getTHETA_ENDCAP_MAX())+1)
00108         /(EmcID::getPHI_BARREL_MAX()+1);  //phi1=phi*4/5
00109       aNb=EmcID::crystal_id(east_west,EmcID::getTHETA_ENDCAP_MAX(),phi1);
00110       NeighborVec.push_back(aNb);
00111       if(phi%5==0) {
00112         if(phi==EmcID::getPHI_BARREL_MIN()) {  //phi=0
00113           aNb=EmcID::crystal_id(east_west,EmcID::getTHETA_ENDCAP_MAX(),
00114               EmcID::getPHI_ENDCAP_MAX(EmcID::getTHETA_ENDCAP_MAX()));   //id=(0,5,95)
00115           NeighborVec.push_back(aNb);
00116         } else {
00117           aNb=EmcID::crystal_id(east_west,EmcID::getTHETA_ENDCAP_MAX(),phi1-1);
00118           NeighborVec.push_back(aNb);
00119         }
00120       } else {
00121         if(phi==EmcID::getPHI_BARREL_MAX()) {  //phi=119
00122           aNb=EmcID::crystal_id(east_west,EmcID::getTHETA_ENDCAP_MAX(),
00123               EmcID::getPHI_ENDCAP_MIN());                                //id=(0,5,0)
00124           NeighborVec.push_back(aNb);
00125         } else {
00126           aNb=EmcID::crystal_id(east_west,EmcID::getTHETA_ENDCAP_MAX(),phi1+1);
00127           NeighborVec.push_back(aNb);
00128         }
00129       }
00130     }
00131 
00132     else if((theta>EmcID::getTHETA_BARREL_MIN()) &&      (theta<EmcID::getTHETA_BARREL_MAX())) {
00133       aNb=EmcID::crystal_id(barrel_ec,theta+1,phip);
00134       NeighborVec.push_back(aNb);
00135       aNb=EmcID::crystal_id(barrel_ec,theta+1,phi);
00136       NeighborVec.push_back(aNb);
00137       aNb=EmcID::crystal_id(barrel_ec,theta+1,phin);
00138       NeighborVec.push_back(aNb);
00139       aNb=EmcID::crystal_id(barrel_ec,theta-1,phip);
00140       NeighborVec.push_back(aNb);
00141       aNb=EmcID::crystal_id(barrel_ec,theta-1,phi);
00142       NeighborVec.push_back(aNb);
00143       aNb=EmcID::crystal_id(barrel_ec,theta-1,phin);
00144       NeighborVec.push_back(aNb);
00145     }
00146   }
00147   
00148   else if((barrel_ec==EmcID::getENDCAP_EAST()) ||  //endcap
00149        (barrel_ec==EmcID::getENDCAP_WEST())) {
00150     unsigned int phiInSec=(EmcID::getPHI_ENDCAP_MAX(theta)+1)/16;
00151     unsigned int sector=phi/phiInSec;
00152     unsigned int phip=999;
00153     unsigned int phin=999;
00154     unsigned int InvalidPhi = 999;
00155     if(phi==EmcID::getPHI_ENDCAP_MIN()) {
00156       phip=EmcID::getPHI_ENDCAP_MAX(theta);
00157       phin=phi+1;
00158     }
00159     else if(phi==EmcID::getPHI_ENDCAP_MAX(theta)) {
00160       phip=phi-1;
00161       phin=EmcID::getPHI_ENDCAP_MIN();
00162     }
00163     else if((phi==4*phiInSec-1) || (phi==12*phiInSec-1)){   //crystal next to the gap
00164       phip=phi-1;
00165       phin=phi+1; //InvalidPhi;
00166     }
00167     else if((phi==4*phiInSec) || (phi==12*phiInSec)) {
00168       phip=phi-1; //InvalidPhi;
00169       phin=phi+1;
00170     }
00171     else if(((phi>EmcID::getPHI_ENDCAP_MIN())&&(phi<4*phiInSec-1)) || 
00172         ((phi>4*phiInSec)&&(phi<12*phiInSec-1)) || 
00173         ((phi>12*phiInSec)&&(phi<EmcID::getPHI_ENDCAP_MAX(theta)))) {
00174       phip=phi-1;
00175       phin=phi+1;
00176     }
00177 
00178     if(phip!=InvalidPhi) {
00179       aNb=EmcID::crystal_id(barrel_ec,theta,phip);
00180       NeighborVec.push_back(aNb);
00181     }
00182     if(phin!=InvalidPhi) {
00183       aNb=EmcID::crystal_id(barrel_ec,theta,phin);
00184       NeighborVec.push_back(aNb);
00185     }
00186 
00187     if(theta==EmcID::getTHETA_ENDCAP_MIN()) {           //layer 0
00188       if(phip!=InvalidPhi) {
00189         aNb=EmcID::crystal_id(barrel_ec,theta+1,phip);
00190         NeighborVec.push_back(aNb);
00191       }
00192       aNb=EmcID::crystal_id(barrel_ec,theta+1,phi);
00193       NeighborVec.push_back(aNb);
00194       if(phin!=InvalidPhi) {
00195         aNb=EmcID::crystal_id(barrel_ec,theta+1,phin);
00196         NeighborVec.push_back(aNb);
00197       }
00198     }
00199     
00200     else if(theta==EmcID::getTHETA_ENDCAP_MAX()) {      //layer 5
00201       if(phip!=InvalidPhi) {
00202         aNb=EmcID::crystal_id(barrel_ec,theta-1,phip);
00203         NeighborVec.push_back(aNb);
00204       }
00205       aNb=EmcID::crystal_id(barrel_ec,theta-1,phi);
00206       NeighborVec.push_back(aNb);
00207       if(phin!=InvalidPhi) {
00208         aNb=EmcID::crystal_id(barrel_ec,theta-1,phin);
00209         NeighborVec.push_back(aNb);
00210       }
00211 
00212       unsigned int phi1=phi*(EmcID::getPHI_BARREL_MAX()+1)/(EmcID::getPHI_ENDCAP_MAX(theta)+1);
00213       unsigned int min_max=0;
00214       if(barrel_ec==EmcID::getENDCAP_EAST()){
00215         min_max=EmcID::getTHETA_BARREL_MIN();
00216       } else {
00217         min_max=EmcID::getTHETA_BARREL_MAX();
00218       }
00219       aNb=EmcID::crystal_id(EmcID::getBARREL(),min_max,phi1);
00220       NeighborVec.push_back(aNb);
00221       aNb=EmcID::crystal_id(EmcID::getBARREL(),min_max,phi1+1);
00222       NeighborVec.push_back(aNb);                                      
00223       if(phi%4==0) {
00224         if(phi==EmcID::getPHI_ENDCAP_MIN()) {
00225           aNb=EmcID::crystal_id(EmcID::getBARREL(),min_max,EmcID::getPHI_BARREL_MAX());
00226           NeighborVec.push_back(aNb);
00227         } else {
00228           aNb=EmcID::crystal_id(EmcID::getBARREL(),min_max,phi1-1);
00229           NeighborVec.push_back(aNb);
00230         }
00231       } else if(phi%4==3) {
00232         if(phi==EmcID::getPHI_ENDCAP_MAX(theta)){
00233           aNb=EmcID::crystal_id(EmcID::getBARREL(),min_max,EmcID::getPHI_BARREL_MIN());
00234           NeighborVec.push_back(aNb);
00235         } else {
00236           aNb=EmcID::crystal_id(EmcID::getBARREL(),min_max,phi1+2);
00237           NeighborVec.push_back(aNb);
00238         }
00239       }
00240     }
00241     
00242     else if((theta==EmcID::getTHETA_ENDCAP_MIN()+1) ||   //layer 1,3
00243         (theta==EmcID::getTHETA_ENDCAP_MIN()+3)) {
00244       if(phip!=InvalidPhi) {
00245         aNb=EmcID::crystal_id(barrel_ec,theta-1,phip);
00246         NeighborVec.push_back(aNb);
00247       }
00248       aNb=EmcID::crystal_id(barrel_ec,theta-1,phi);
00249       NeighborVec.push_back(aNb);
00250       if(phin!=InvalidPhi) {
00251         aNb=EmcID::crystal_id(barrel_ec,theta-1,phin);
00252         NeighborVec.push_back(aNb);
00253       }
00254 
00255       unsigned int phi1=phi*(phiInSec+1)/phiInSec;
00256       aNb=EmcID::crystal_id(barrel_ec,theta+1,phi1);
00257       NeighborVec.push_back(aNb);
00258       aNb=EmcID::crystal_id(barrel_ec,theta+1,phi1+1);
00259       NeighborVec.push_back(aNb);
00260       if(phi%phiInSec==0) {
00261         if(sector==0){
00262           aNb=EmcID::crystal_id(barrel_ec,theta+1,EmcID::getPHI_ENDCAP_MAX(theta+1));
00263           NeighborVec.push_back(aNb);
00264         } else {
00265           aNb=EmcID::crystal_id(barrel_ec,theta+1,phi1-1);
00266           NeighborVec.push_back(aNb);
00267         }
00268       } else if(phi%phiInSec==phiInSec-1) {
00269         if(sector==15){
00270           aNb=EmcID::crystal_id(barrel_ec,theta+1,EmcID::getPHI_ENDCAP_MIN());
00271           NeighborVec.push_back(aNb);
00272         } else {
00273           aNb=EmcID::crystal_id(barrel_ec,theta+1,phi1+2);
00274           NeighborVec.push_back(aNb);
00275         }
00276       }
00277     }
00278     
00279     else if((theta==EmcID::getTHETA_ENDCAP_MIN()+2) ||   //layer 2,4
00280         (theta==EmcID::getTHETA_ENDCAP_MIN()+4)) {
00281       unsigned int phi1=phi*(phiInSec-1)/phiInSec;
00282       aNb=EmcID::crystal_id(barrel_ec,theta-1,phi1);
00283       NeighborVec.push_back(aNb);
00284       if(phi%phiInSec==0){
00285         if(sector==0){
00286           aNb=EmcID::crystal_id(barrel_ec,theta+1,EmcID::getPHI_ENDCAP_MAX(theta-1));
00287           NeighborVec.push_back(aNb);
00288         } else {
00289           aNb=EmcID::crystal_id(barrel_ec,theta-1,phi1-1);
00290           NeighborVec.push_back(aNb);
00291         }
00292       } else {
00293         if(phi==EmcID::getPHI_ENDCAP_MAX(theta)){
00294           aNb=EmcID::crystal_id(barrel_ec,theta-1,EmcID::getPHI_ENDCAP_MIN());
00295           NeighborVec.push_back(aNb);
00296         } else {
00297           aNb=EmcID::crystal_id(barrel_ec,theta-1,phi1+1);
00298           NeighborVec.push_back(aNb);
00299         }
00300       }
00301 
00302       if(phip!=InvalidPhi) {
00303         aNb=EmcID::crystal_id(barrel_ec,theta+1,phip);
00304         NeighborVec.push_back(aNb);
00305       }
00306       aNb=EmcID::crystal_id(barrel_ec,theta+1,phi);
00307       NeighborVec.push_back(aNb);
00308       if(phin!=InvalidPhi) {
00309         aNb=EmcID::crystal_id(barrel_ec,theta+1,phin);
00310         NeighborVec.push_back(aNb);
00311       }
00312     }
00313   }
00314    
00315   return NeighborVec;
00316 }

RecEmcIDVector EmcRecNeighbor::GetNextNeighbors ( const Identifier id  ) 

Definition at line 319 of file EmcRecNeighbor.cxx.

References EmcID::barrel_ec(), EmcID::crystal_id(), GetNeighbors(), EmcID::getPHI_BARREL_MAX(), EmcID::getPHI_BARREL_MIN(), EmcID::getTHETA_BARREL_MAX(), EmcID::getTHETA_BARREL_MIN(), EmcID::phi_module(), and EmcID::theta_module().

Referenced by EmcRecShowerEnergy::Energy(), IsNextNeighbor(), and main().

00320 {
00321    unsigned int barrel_ec=EmcID::barrel_ec(id);
00322    unsigned int theta=EmcID::theta_module(id);
00323    unsigned int phi=EmcID::phi_module(id);
00324    
00325    RecEmcID aNb;
00326    RecEmcIDVector NeighborVec;
00327    
00328    NeighborVec.clear();
00329 
00330    //if(barrel_ec==EmcID::getBARREL()) {
00331    if(0) {  //not used now
00332       unsigned int phip,phipp;
00333       unsigned int phin,phinn;
00334       unsigned int thetap,thetapp;
00335       unsigned int thetan,thetann;      
00336       unsigned int invalidTheta=999999;
00337       if(phi==EmcID::getPHI_BARREL_MIN()) {
00338          phipp=EmcID::getPHI_BARREL_MAX()-1;
00339          phip=EmcID::getPHI_BARREL_MAX();
00340          phin=phi+1;
00341          phinn=phi+2;
00342       }
00343       if(phi==EmcID::getPHI_BARREL_MIN()+1) {
00344          phipp=EmcID::getPHI_BARREL_MAX();
00345          phip=phi-1;
00346          phin=phi+1;
00347          phinn=phi+2;
00348       }
00349       if(phi==EmcID::getPHI_BARREL_MAX()-1) {
00350          phipp=phi-2;
00351          phip=phi-1;
00352          phin=phi+1;
00353          phinn=EmcID::getPHI_BARREL_MIN();
00354       }
00355       if(phi==EmcID::getPHI_BARREL_MAX()) {
00356          phipp=phi-2;
00357          phip=phi-1;
00358          phin=EmcID::getPHI_BARREL_MIN();
00359          phinn=EmcID::getPHI_BARREL_MIN()+1;
00360       }
00361       if((phi>EmcID::getPHI_BARREL_MIN()+1) &&
00362          (phi<EmcID::getPHI_BARREL_MAX()-1)) {
00363          phipp=phi-2;
00364          phip=phi-1;
00365          phin=phi+1;
00366          phinn=phi+2;
00367       }
00368 
00369       if(theta==EmcID::getTHETA_BARREL_MIN()) {
00370          thetapp=invalidTheta;
00371          thetap=invalidTheta;
00372          thetan=theta+1;
00373          thetann=theta+2;
00374       }
00375       if(theta==EmcID::getTHETA_BARREL_MIN()+1) {
00376          thetapp=invalidTheta;
00377          thetap=theta-1;
00378          thetan=theta+1;
00379          thetann=theta+2;
00380       }
00381       if((theta>EmcID::getTHETA_BARREL_MIN()+1) &&
00382          (theta<EmcID::getTHETA_BARREL_MAX()-1)) {
00383          thetapp=theta-2;
00384          thetap=theta-1;
00385          thetan=theta+1;
00386          thetann=theta+2;
00387       }
00388       if(theta==EmcID::getTHETA_BARREL_MAX()-1) {
00389          thetapp=theta-2;
00390          thetap=theta-1;
00391          thetan=theta+1;
00392          thetann=invalidTheta;
00393       }
00394       if(theta==EmcID::getTHETA_BARREL_MAX()) {
00395          thetapp=theta-2;
00396          thetap=theta-1;
00397          thetan=invalidTheta;
00398          thetann=invalidTheta;
00399       }
00400 
00401       // Check them out.
00402       //cout<<phipp<<" "<<phip<<" "<<phi<<" "<<phin<<" "<<phinn<<endl;
00403       //cout<<thetapp<<" "<<thetap<<" "<<theta<<" "<<thetan<<" "<<thetann<<endl;
00404       
00405       aNb=EmcID::crystal_id(barrel_ec,theta,phipp);
00406       NeighborVec.push_back(aNb);
00407       aNb=EmcID::crystal_id(barrel_ec,theta,phinn);
00408       NeighborVec.push_back(aNb);
00409    
00410       if(thetapp!=invalidTheta) {
00411          aNb=EmcID::crystal_id(barrel_ec,thetapp,phipp);
00412          NeighborVec.push_back(aNb);
00413          aNb=EmcID::crystal_id(barrel_ec,thetapp,phip);
00414          NeighborVec.push_back(aNb);
00415          aNb=EmcID::crystal_id(barrel_ec,thetapp,phi);
00416          NeighborVec.push_back(aNb);
00417          aNb=EmcID::crystal_id(barrel_ec,thetapp,phin);
00418          NeighborVec.push_back(aNb);
00419          aNb=EmcID::crystal_id(barrel_ec,thetapp,phinn);
00420          NeighborVec.push_back(aNb);
00421       }
00422       if(thetap!=invalidTheta) {
00423          aNb=EmcID::crystal_id(barrel_ec,thetap,phipp);
00424          NeighborVec.push_back(aNb);
00425          aNb=EmcID::crystal_id(barrel_ec,thetap,phinn);
00426          NeighborVec.push_back(aNb);
00427       }
00428       if(thetan!=invalidTheta) {
00429          aNb=EmcID::crystal_id(barrel_ec,thetan,phipp);
00430          NeighborVec.push_back(aNb);
00431          aNb=EmcID::crystal_id(barrel_ec,thetan,phinn);
00432          NeighborVec.push_back(aNb);
00433       }
00434       if(thetann!=invalidTheta) {
00435          aNb=EmcID::crystal_id(barrel_ec,thetann,phipp);
00436          NeighborVec.push_back(aNb);
00437          aNb=EmcID::crystal_id(barrel_ec,thetann,phip);
00438          NeighborVec.push_back(aNb);
00439          aNb=EmcID::crystal_id(barrel_ec,thetann,phi);
00440          NeighborVec.push_back(aNb);
00441          aNb=EmcID::crystal_id(barrel_ec,thetann,phin);
00442          NeighborVec.push_back(aNb);
00443          aNb=EmcID::crystal_id(barrel_ec,thetann,phinn);
00444          NeighborVec.push_back(aNb);
00445       }
00446    }
00447 
00448    //else if((barrel_ec==EmcID::getENDCAP_EAST()) ||  //endcap
00449        //(barrel_ec==EmcID::getENDCAP_WEST())) {
00450    else {
00451      RecEmcIDVector tmpNeighborVec,tmpNextNeighborVec;
00452      ci_RecEmcIDVector ci_NV,ci_tmpNV,ci_tmpNV1,ci_tmpNNV;
00453      tmpNeighborVec=GetNeighbors(id);
00454      bool flag=false;           //whether NeighborVec already includes this crystal
00455      bool flagNeighbor=false;   //whether this crystal belongs to NeighborVec
00456     
00457      //------------------------------------------------------------------
00458      for(ci_tmpNV=tmpNeighborVec.begin();
00459          ci_tmpNV!=tmpNeighborVec.end();
00460          ci_tmpNV++){
00461        tmpNextNeighborVec=GetNeighbors(*ci_tmpNV);
00462        //================================================================
00463        for(ci_tmpNNV=tmpNextNeighborVec.begin();
00464            ci_tmpNNV!=tmpNextNeighborVec.end();
00465            ci_tmpNNV++){
00466          
00467          for(ci_NV=NeighborVec.begin();
00468              ci_NV!=NeighborVec.end();
00469              ci_NV++){
00470            if(*ci_tmpNNV==*ci_NV){  //this crystal is already included
00471              flag=true;
00472              continue;
00473            }
00474          }
00475          
00476          if(!flag){       //find a new crystal
00477            for(ci_tmpNV1=tmpNeighborVec.begin();
00478                ci_tmpNV1!=tmpNeighborVec.end();
00479                ci_tmpNV1++){
00480              if(*ci_tmpNNV==*ci_tmpNV1){  //this crystal belongs to NeighborVec
00481                flagNeighbor=true;
00482                continue;
00483              }
00484            }
00485 
00486            if(*ci_tmpNNV==id)
00487              flagNeighbor=true;
00488            
00489            if(!flagNeighbor)
00490              NeighborVec.push_back(*ci_tmpNNV);
00491            else
00492              flagNeighbor=false;
00493          }
00494          else
00495            flag=false;
00496        }
00497        //================================================================
00498      }
00499      //------------------------------------------------------------------
00500    }
00501 
00502    return NeighborVec;   
00503 }

bool EmcRecNeighbor::IsNeighbor ( const Identifier id1,
const Identifier id2 
)

Definition at line 18 of file EmcRecNeighbor.cxx.

References GetNeighbors(), and is.

Referenced by EmcRecSeedEThreshold::Seed().

00020 {
00021    bool is;
00022    RecEmcIDVector NeighborVec;
00023    ci_RecEmcIDVector ci_NV;
00024    
00025    is=false;
00026    NeighborVec=GetNeighbors(id1);
00027    for(ci_NV=NeighborVec.begin();
00028        ci_NV!=NeighborVec.end();
00029        ++ci_NV) {
00030       if((*ci_NV)==id2) { is=true; }
00031    }
00032    return is;
00033 }

bool EmcRecNeighbor::IsNextNeighbor ( const Identifier id1,
const Identifier id2 
)

Definition at line 36 of file EmcRecNeighbor.cxx.

References GetNextNeighbors(), and is.

00038 {
00039    bool is;
00040    RecEmcIDVector NeighborVec;
00041    ci_RecEmcIDVector ci_NV;
00042    
00043    is=false;
00044    NeighborVec=GetNextNeighbors(id1);
00045    for(ci_NV=NeighborVec.begin();
00046        ci_NV!=NeighborVec.end();
00047        ++ci_NV) {
00048       if((*ci_NV)==id2) { is=true; }
00049    }
00050    return is;
00051 }


Generated on Tue Nov 29 23:18:44 2016 for BOSS_7.0.2 by  doxygen 1.4.7