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

AlgSliceSR.cxx

Go to the documentation of this file.
00001 
00002 // $Id: AlgSliceSR.cxx,v 1.9 2004/08/19 14:33:20 musser Exp $
00003 //
00004 // AlgSliceSR.cxx
00005 //
00006 // Begin_Html<img src="../../pedestrians.gif" align=center>
00007 // <a href="../source_warning.html">Warning for beginners</a>.<br> 
00008 //
00009 // AlgSliceSR is a concrete SliceSR Algorithm class.
00010 //
00011 // Author:  R. Lee 2001.01.23
00012 //
00013 // Also see <a href="../../root_crib/index.html">The ROOT Crib</a> and 
00014 // <a href="../CandSliceSR.html"> CandSliceSR Classes</a> (part of
00015 // <a href="../index.html">The MINOS Class User Guide</a>)End_Html
00017 
00018 #include <cassert>
00019 
00020 #include "Candidate/CandContext.h"
00021 #include "CandSliceSR/AlgSliceSR.h"
00022 #include "RecoBase/CandSliceHandle.h"
00023 #include "MessageService/MsgService.h"
00024 #include "MinosObjectMap/MomNavigator.h"
00025 #include "RecoBase/CandStripHandle.h"
00026 #include "Validity/VldContext.h"
00027 
00028 ClassImp(AlgSliceSR)
00029 
00030 //______________________________________________________________________
00031 //CVSID("$Id: AlgSliceSR.cxx,v 1.9 2004/08/19 14:33:20 musser Exp $");
00032 //______________________________________________________________________
00033 AlgSliceSR::AlgSliceSR()
00034 {
00035 }
00036 
00037 //______________________________________________________________________
00038 AlgSliceSR::~AlgSliceSR()
00039 {
00040 }
00041 
00042 //______________________________________________________________________
00043 void AlgSliceSR::RunAlg(AlgConfig & /* ac */, CandHandle &ch, CandContext &cx)
00044 {
00045 
00046   assert(ch.InheritsFrom("CandSliceHandle"));
00047   CandSliceHandle &csh = dynamic_cast<CandSliceHandle &>(ch);
00048 
00049   assert(cx.GetDataIn());
00050   assert(cx.GetDataIn()->InheritsFrom("TObjArray"));
00051 
00052   const TObjArray *tary =
00053      dynamic_cast<const TObjArray*>(cx.GetDataIn());
00054 
00055   for (Int_t i=0; i<=tary->GetLast(); i++) {
00056      TObject *tobj = tary->At(i);
00057      assert(tobj->InheritsFrom("CandStripHandle"));
00058      CandStripHandle *striphandle = dynamic_cast<CandStripHandle*>(tobj);
00059      csh.AddDaughterLink(*striphandle);
00060 
00061   }
00062 
00063 }
00064 
00065 //______________________________________________________________________
00066 void AlgSliceSR::Trace(const char * /* c */) const
00067 {
00068 }

Generated on Mon Feb 15 11:06:19 2010 for loon by  doxygen 1.3.9.1