Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

AlgCluster3D.cxx

Go to the documentation of this file.
00001 
00002 //
00003 // AlgCluster3D.cxx (based on R.Lee's AlgClusterSR)
00004 //
00005 // AlgCluster3D is a concrete Cluster3D Algorithm class.
00006 //
00007 // Author:  K.Grzelak1@physics.ox.ac.uk
00008 //
00010 
00011 #include <cassert>
00012 
00013 #include "Cluster3D/AlgCluster3D.h"
00014 #include "Cluster3D/CandCluster3DHandle.h"
00015 #include "MessageService/MsgService.h"
00016 #include "MinosObjectMap/MomNavigator.h"
00017 #include "RecoBase/CandStripHandle.h"
00018 #include "Candidate/CandHandle.h"
00019 #include "Candidate/CandContext.h"
00020 #include "Validity/VldContext.h"
00021 
00022 ClassImp(AlgCluster3D)
00023 
00024 CVSID("$Id:");
00025 
00026 //______________________________________________________________________
00027 void AlgCluster3D::RunAlg(AlgConfig & /* ac */, CandHandle &ch, CandContext &cx)
00028 {
00029   MSG("Cluster3D", Msg::kDebug) << "Starting AlgCluster3D::RunAlg()" << endl;
00030 
00031   assert(ch.InheritsFrom("CandCluster3DHandle"));
00032   CandCluster3DHandle &cch = dynamic_cast<CandCluster3DHandle &>(ch);
00033 
00034   assert(cx.GetDataIn());
00035 
00036   assert(cx.GetDataIn()->InheritsFrom("TObjArray"));
00037 
00038   const TObjArray *tary =
00039      dynamic_cast<const TObjArray*>(cx.GetDataIn());
00040 
00041   for (Int_t i=0; i<=tary->GetLast(); i++) {
00042      TObject *tobj = tary->At(i);
00043      assert(tobj->InheritsFrom("CandStripHandle"));
00044      CandStripHandle *striphandle = dynamic_cast<CandStripHandle*>(tobj);
00045      cch.AddDaughterLink(*striphandle);
00046   }
00047 
00048 }
00049 //______________________________________________________________________
00050 void AlgCluster3D::Trace(const char * /* c */) const
00051 {
00052 }

Generated on Thu Nov 1 15:51:40 2007 for loon by  doxygen 1.3.9.1