00001
00002
00003
00004
00005
00007
00008 #include "Algorithm/AlgHandle.h"
00009 #include "MuonRemoval/CandRmMuList.h"
00010 #include "MuonRemoval/CandRmMuListHandle.h"
00011 #include "MessageService/MsgService.h"
00012
00013 ClassImp(CandRmMuList)
00014
00015
00016 CVSID("$Id: CandRmMuList.cxx,v 1.1 2006/06/27 13:44:34 cbs Exp $");
00017
00018
00019 CandRmMuList::CandRmMuList()
00020 {
00021 MSG("Cand", Msg::kDebug)
00022 << "Begin CandRmMuList::CandRmMuList() ctor: " << endl
00023 << "UidInt = " << GetUidInt()
00024 << ", ArchUidInt " << GetArchUidInt() << endl
00025 << "No. of links = " << GetNLinks() << endl
00026 << "End CandRmMuList::CandRmMuList() ctor." << endl;
00027 }
00028
00029
00030 CandRmMuList::CandRmMuList(AlgHandle &ah) :
00031 CandBase(ah)
00032 {
00033
00034
00035
00036
00037
00038
00039 }
00040
00041
00042 CandRmMuList::CandRmMuList(AlgHandle &ah, CandHandle &ch,
00043 CandContext &cx) :
00044 CandBase(ah)
00045 {
00046 CreateLocalHandle();
00047 MSG("Cand", Msg::kDebug)
00048 << "Begin CandRmMuList::CandRmMuList"
00049 << "(AlgHandle &, CandHandle &, " << "CandContext &) ctor: " << endl
00050 << "UidInt = " << GetUidInt()
00051 << ", ArchUidInt " << GetArchUidInt() << endl
00052 << "No. of links = " << GetNLinks() << endl
00053 << "End CandRmMuList::CandRmMuList"
00054 << "(AlgHandle &, CandHandle &, " << "CandContext &) ctor." << endl;
00055
00056
00057 {
00058 CandRmMuListHandle cshl(this);
00059 ch = cshl;
00060 }
00061 ah.RunAlg(ch, cx);
00062 }
00063
00064
00065 CandRmMuList::CandRmMuList(const CandRmMuList &rhs) :
00066 CandBase(rhs)
00067 {
00068
00069
00070 MSG("Cand", Msg::kDebug)
00071 << "Begin CandRmMuList::CandRmMuList"
00072 << "(const CandRmMuList &rhs) ctor: " << endl
00073 << "UidInt = " << GetUidInt()
00074 << ", ArchUidInt " << GetArchUidInt() << endl
00075 << "No. of links = " << GetNLinks() << endl
00076 << "End CandRmMuList::CandRmMuList"
00077 << "(const CandRmMuList &rhs) ctor." << endl;
00078 }
00079
00080
00081 CandRmMuList::~CandRmMuList()
00082 {
00083 MSG("Cand", Msg::kDebug)
00084 << "Begin CandRmMuList::~CandRmMuList() dtor: " << endl
00085 << "UidInt = " << GetUidInt()
00086 << ", ArchUidInt " << GetArchUidInt() << endl
00087 << "No. of links = " << GetNLinks() << endl
00088 << "End CandRmMuList::~CandRmMuList() dtor." << endl;
00089 }
00090
00091
00092 void CandRmMuList::CreateLocalHandle()
00093 {
00094 SetLocalHandle(new CandRmMuListHandle(this));
00095 }
00096
00097
00098 CandRmMuList *CandRmMuList::Dup() const
00099 {
00100
00101
00102
00103
00104
00105 CandRmMuList *cb = new CandRmMuList(*this);
00106 cb->CreateLocalHandle();
00107 TIter iterdau = GetDaughterIterator();
00108 CandHandle *dau;
00109 while ((dau=(CandHandle *) iterdau())) cb->AddDaughterLink(*dau);
00110 return cb;
00111 }
00112
00113
00114 Bool_t CandRmMuList::IsEquivalent(const TObject *rhs) const
00115 {
00116 Bool_t result = true;
00117 if (!CandBase::IsEquivalent(rhs)) result = false;
00118 TestDisplayCandBanner("CandRmMuList");
00119 const CandRmMuList* rCnd = dynamic_cast<const CandRmMuList*>(rhs);
00120 if (rCnd == NULL) return false;
00121 TestNothing("CandRmMuList");
00122 return result;
00123 }
00124
00125
00126 CandRmMuListHandle CandRmMuList::MakeCandidate(AlgHandle &ah,
00127 CandContext &cx)
00128 {
00129 CandRmMuListHandle cshl;
00130 new CandRmMuList(ah, cshl, cx);
00131 return cshl;
00132 }