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

CandAtNuRecoHandle.cxx

Go to the documentation of this file.
00001 
00002 #include "MessageService/MsgService.h"     
00003 #include "JobControl/JobCModuleRegistry.h" 
00004 
00005 #include "Navigation/NavKey.h"
00006 #include "Navigation/NavSet.h"
00007 
00008 #include "Candidate/CandContext.h"
00009 #include "MinosObjectMap/MomNavigator.h"
00010 #include "RecoBase/CandRecoHandle.h"
00011 #include "CandAtNuRecoHandle.h"
00012 
00013 #include "CandTrackAtNuHandle.h"
00014 #include "CandShowerAtNuHandle.h"
00015 
00016 //
00017 // $Log $
00018 //
00019 
00020 ClassImp(CandAtNuRecoHandle)
00021 
00022 CVSID("$Id: CandAtNuRecoHandle.cxx,v 1.6 2005/02/04 21:07:53 blake Exp $");
00023 
00024 CandAtNuRecoHandle::CandAtNuRecoHandle()
00025 {
00026   MSG("CandAtNuRecoHandle", Msg::kDebug) << " " << endl;
00027 }
00028 
00029 CandAtNuRecoHandle::CandAtNuRecoHandle(const CandAtNuRecoHandle &cdh) :
00030   CandRecoHandle(cdh)
00031 {
00032 
00033 }
00034 
00035 CandAtNuRecoHandle::CandAtNuRecoHandle(CandAtNuReco *cd) :
00036   CandRecoHandle(cd)
00037 {
00038 
00039 }
00040 
00041 CandAtNuRecoHandle::~CandAtNuRecoHandle()
00042 {
00043 
00044 }
00045 
00046 CandAtNuRecoHandle *CandAtNuRecoHandle::DupHandle() const
00047 {
00048    return (new CandAtNuRecoHandle(*this));
00049 }
00050 
00051 void CandAtNuRecoHandle::Trace(const char *c) const
00052 {
00053   CandHandle::Trace(c);
00054 }
00055 
00056 void CandAtNuRecoHandle::AddShower(CandShowerAtNuHandle* shower)
00057 {
00058   TObjArray *fShowerList = &(dynamic_cast<CandAtNuReco*>(GetOwnedCandBase())->fShowerList);
00059   Bool_t found = 0;
00060   for (Int_t i=0; i<=fShowerList->GetLast() && !found; i++) {
00061     CandShowerAtNuHandle *target = dynamic_cast<CandShowerAtNuHandle*>(fShowerList->At(i));
00062     if (*shower == *target) {
00063       found = 1;
00064     }
00065   }
00066   if (found) {
00067     return;
00068   }
00069   fShowerList->Add(shower);
00070 }
00071   
00072 void CandAtNuRecoHandle::AddTrack(CandTrackAtNuHandle* track)
00073 {
00074   TObjArray *fTrackList = &(dynamic_cast<CandAtNuReco*>(GetOwnedCandBase())->fTrackList);
00075   Bool_t found = 0;
00076   for (Int_t i=0; i<=fTrackList->GetLast() && !found; i++) {
00077     CandTrackAtNuHandle *target = dynamic_cast<CandTrackAtNuHandle*>(fTrackList->At(i));
00078     if (*track == *target) {
00079       found = 1;
00080     }
00081   }
00082   if (found) {
00083     return;
00084   }
00085   fTrackList->Add(track);
00086 }
00087 
00088 CandShowerAtNuHandle* CandAtNuRecoHandle::GetShower(Int_t i)
00089 {
00090   const TObjArray* fShowerList = &(dynamic_cast<const CandAtNuReco*>(GetCandBase())->fShowerList);
00091   if (i>fShowerList->GetLast()) {
00092     return 0;
00093   }
00094   return dynamic_cast<CandShowerAtNuHandle*>(fShowerList->At(i));
00095 }
00096 
00097 CandTrackAtNuHandle* CandAtNuRecoHandle::GetTrack(Int_t i)
00098 {
00099   const TObjArray* fTrackList = &(dynamic_cast<const CandAtNuReco*>(GetCandBase())->fTrackList);
00100   if (i>fTrackList->GetLast()) {
00101     return 0;
00102   }
00103   return dynamic_cast<CandTrackAtNuHandle*>(fTrackList->At(i));
00104 }
00105 
00106 Int_t CandAtNuRecoHandle::GetLastShower() const
00107 {
00108   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fShowerList.GetLast();
00109 }
00110 
00111 Int_t CandAtNuRecoHandle::GetLastTrack() const
00112 {
00113   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fTrackList.GetLast();
00114 }
00115 
00116 Int_t CandAtNuRecoHandle::GetNtracks() const
00117 {
00118   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fTrackList.GetLast()+1;
00119 }
00120   
00121 Int_t CandAtNuRecoHandle::GetNshowers() const
00122 {
00123   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fShowerList.GetLast()+1;
00124 }
00125 
00126 void CandAtNuRecoHandle::SetAtNuRecoScore(Double_t scr)
00127 {
00128   dynamic_cast<CandAtNuReco*>(GetOwnedCandBase())->fAtNuRecoScore=scr;
00129 }
00130 
00131 Double_t CandAtNuRecoHandle::GetAtNuRecoScore() const
00132 {
00133   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fAtNuRecoScore;
00134 }
00135 
00136 void CandAtNuRecoHandle::SetCPUTime(Double_t time)
00137 {
00138   dynamic_cast<CandAtNuReco*>(GetOwnedCandBase())->fCPUTime=time;
00139 }
00140 
00141 Double_t CandAtNuRecoHandle::GetCPUTime() const
00142 {
00143   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fCPUTime;
00144 }
00145 
00146 void CandAtNuRecoHandle::SetNBlocks(Int_t nblocks)
00147 {
00148   dynamic_cast<CandAtNuReco*>(GetOwnedCandBase())->fNBlocks=nblocks;
00149 }
00150   
00151 Int_t CandAtNuRecoHandle::GetNBlocks() const
00152 {
00153   return dynamic_cast<const CandAtNuReco*>(GetCandBase())->fNBlocks;
00154 }
00155 
00156 XXXITRIMP(CandAtNuRecoHandle)

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