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

CandSubShowerSR Class Reference

#include <CandSubShowerSR.h>

Inheritance diagram for CandSubShowerSR:

CandReco CandBase CandRefCounted List of all members.

Public Member Functions

 CandSubShowerSR ()

Static Public Member Functions

CandSubShowerSRHandle MakeCandidate (AlgHandle &ah, CandContext &cx)

Protected Member Functions

 CandSubShowerSR (AlgHandle &ah)
 CandSubShowerSR (AlgHandle &ah, CandHandle &ch, CandContext &cx)
 CandSubShowerSR (const CandSubShowerSR &rhs)
virtual ~CandSubShowerSR ()
virtual void CreateLocalHandle ()
virtual CandSubShowerSRDup () const
virtual Bool_t IsEquivalent (const TObject *rhs) const

Protected Attributes

Double_t Energy
PlaneView::PlaneView_t planeView
Float_t Slope
Float_t AvgDev
ClusterType::ClusterType_t ClusterID
Float_t ProbEM

Friends

class CandSubShowerSRHandle

Constructor & Destructor Documentation

CandSubShowerSR::CandSubShowerSR  ) 
 

Definition at line 21 of file CandSubShowerSR.cxx.

References MSG.

Referenced by Dup(), and MakeCandidate().

00022   : Energy(0), planeView(PlaneView::kUnknown), Slope(0),
00023     AvgDev(0), ClusterID(ClusterType::kUnknown), ProbEM(0)
00024 {
00025   MSG("Cand", Msg::kDebug)
00026     << "Begin CandSubShowerSR::CandSubShowerSR() ctor: " << endl
00027     << "UidInt = " << GetUidInt()
00028     << ", ArchUidInt " << GetArchUidInt() << endl
00029     << "No. of links = " << GetNLinks() << endl
00030     << "End CandSubShowerSR::CandSubShowerSR() ctor." << endl;
00031 
00032 }

CandSubShowerSR::CandSubShowerSR AlgHandle ah  )  [protected]
 

Definition at line 35 of file CandSubShowerSR.cxx.

00035                                               :
00036   CandReco(ah)     // Should be the next class up on inheritance chain
00037   ,Energy(0), planeView(PlaneView::kUnknown), Slope(0), 
00038   AvgDev(0), ClusterID(ClusterType::kUnknown), ProbEM(0)
00039 {
00040 
00041 // The sole purpose of this constructor is to transmit the AlgHandle
00042 // up the inheritance chain to CandBase without having to invoke the
00043 // full constructor of an intermediate Candidate type which the highest
00044 // level Candidate might inherit from.  One only wants to create the
00045 // LocalHandle and invoke the RunAlg() method in the lowest level class.
00046 }

CandSubShowerSR::CandSubShowerSR AlgHandle ah,
CandHandle ch,
CandContext cx
[protected]
 

Definition at line 49 of file CandSubShowerSR.cxx.

References CreateLocalHandle(), CandBase::GetArchUidInt(), CandRefCounted::GetNLinks(), CandBase::GetUidInt(), MSG, and AlgHandle::RunAlg().

00050                                                   :
00051   CandReco(ah)     // Should be the next class up on inheritance chain
00052   ,Energy(0), planeView(PlaneView::kUnknown), Slope(0), 
00053   AvgDev(0), ClusterID(ClusterType::kUnknown), ProbEM(0)
00054 {
00055   CreateLocalHandle();
00056   MSG("Cand", Msg::kDebug)
00057     << "Begin CandSubShowerSR::CandSubShowerSR(AlgHandle &, CandHandle &, "
00058     << "CandContext &) ctor: " << endl
00059     << "UidInt = " << GetUidInt()
00060     << ", ArchUidInt " << GetArchUidInt() << endl
00061     << "No. of links = " << GetNLinks() << endl
00062     << "End CandSubShowerSR::CandSubShowerSR(AlgHandle &, CandHandle &, "
00063     << "CandContext &) ctor." << endl;
00064 
00065    // Run Algorithm to construct Candidate
00066   {                                                    // Start of scope
00067     CandSubShowerSRHandle csh(this);            // csh will go out of scope
00068     ch = csh;                                       // after setting ch.
00069   }                                                      // End of scope
00070   ah.RunAlg(ch, cx);
00071 }

CandSubShowerSR::CandSubShowerSR const CandSubShowerSR rhs  )  [protected]
 

Definition at line 74 of file CandSubShowerSR.cxx.

References AvgDev, ClusterID, Energy, CandBase::GetArchUidInt(), CandRefCounted::GetNLinks(), CandBase::GetUidInt(), MSG, planeView, ProbEM, and Slope.

00074                                                            :
00075   CandReco(rhs)    // Should be the next class up on inheritance chain
00076   ,Energy(0), planeView(PlaneView::kUnknown), Slope(0), 
00077   AvgDev(0), ClusterID(ClusterType::kUnknown), ProbEM(0)
00078 {
00079 
00080   MSG("Cand", Msg::kDebug)
00081     << "Begin CandSubShowerSR::CandSubShowerSR(const CandSubShowerSR &rhs) ctor:"
00082     << endl << "UidInt = " << GetUidInt()
00083     << ", ArchUidInt " << GetArchUidInt() << endl
00084     << "No. of links = " << GetNLinks() << endl
00085     << "End CandSubShowerSR::CandSubShowerSR(const CandSubShowerSR &rhs) ctor."
00086     << endl;
00087 
00088   Energy      = rhs.Energy;
00089   planeView   = rhs.planeView;
00090   Slope       = rhs.Slope;
00091   AvgDev      = rhs.AvgDev;
00092   ClusterID   = rhs.ClusterID;
00093   ProbEM      = rhs.ProbEM;
00094 
00095 }

CandSubShowerSR::~CandSubShowerSR  )  [protected, virtual]
 

Definition at line 98 of file CandSubShowerSR.cxx.

References CandBase::GetArchUidInt(), CandRefCounted::GetNLinks(), CandBase::GetUidInt(), and MSG.

00099 {
00100   MSG("Cand", Msg::kDebug)
00101     << "Begin CandSubShowerSR::~CandSubShowerSR() dtor: " << endl
00102     << "UidInt = " << GetUidInt()
00103     << ", ArchUidInt " << GetArchUidInt() << endl
00104     << "No. of links = " << GetNLinks() << endl
00105     << "End CandSubShowerSR::~CandSubShowerSR() dtor." << endl;
00106   
00107 }


Member Function Documentation

void CandSubShowerSR::CreateLocalHandle  )  [protected, virtual]
 

Implements CandReco.

Definition at line 110 of file CandSubShowerSR.cxx.

References CandSubShowerSRHandle, and CandBase::SetLocalHandle().

Referenced by CandSubShowerSR(), and Dup().

00111 {
00112   SetLocalHandle(new CandSubShowerSRHandle(this));
00113 }

CandSubShowerSR * CandSubShowerSR::Dup  )  const [protected, virtual]
 

Implements CandReco.

Definition at line 116 of file CandSubShowerSR.cxx.

References CandBase::AddDaughterLink(), CandSubShowerSR(), CreateLocalHandle(), and CandBase::GetDaughterIterator().

00117 {
00118   
00119   // Base copy ctor dups owned pointers, but defers copying Daughter List.
00120   // Daughter List copy is made in the derived class Dup() function.
00121   // This is because base class copy constructor hasn't yet created
00122   // fLocalHandle with a CandHandle* of the full derived type.
00123   CandSubShowerSR *cb = new CandSubShowerSR(*this);     // Copy-ctor dups ptrs
00124   cb->CreateLocalHandle();   // Initializes fLocalHandle after copy-ctor
00125   TIter iterdau = GetDaughterIterator();
00126   CandHandle *dau;
00127   while ((dau=(CandHandle *) iterdau())) cb->AddDaughterLink(*dau);
00128   return cb;
00129 }

Bool_t CandSubShowerSR::IsEquivalent const TObject *  rhs  )  const [protected, virtual]
 

Reimplemented from CandReco.

Definition at line 132 of file CandSubShowerSR.cxx.

References CandReco::IsEquivalent(), and CandBase::TestDisplayCandBanner().

00133 {
00134   Bool_t result = true;
00135   if (!CandReco::IsEquivalent(rhs)) result = false;   // superclass test  
00136   TestDisplayCandBanner("CandSubShowerSR");
00137   const CandSubShowerSR* rCnd = dynamic_cast<const CandSubShowerSR*>(rhs);
00138   if (rCnd == NULL) return false;
00139   
00140   if(dynamic_cast<const CandSubShowerSR*>(rhs)->Energy!=Energy) 
00141     return false;
00142 
00143   if(dynamic_cast<const CandSubShowerSR*>(rhs)->planeView!=planeView) 
00144     return false;
00145 
00146   if(dynamic_cast<const CandSubShowerSR*>(rhs)->Slope!=Slope) 
00147     return false;
00148 
00149   if(dynamic_cast<const CandSubShowerSR*>(rhs)->AvgDev!=AvgDev) 
00150     return false;
00151   
00152   if(dynamic_cast<const CandSubShowerSR*>(rhs)->ClusterID!=ClusterID) 
00153     return false;
00154 
00155   if(dynamic_cast<const CandSubShowerSR*>(rhs)->ProbEM!=ProbEM) 
00156     return false;
00157 
00158   return result;
00159 }

CandSubShowerSRHandle CandSubShowerSR::MakeCandidate AlgHandle ah,
CandContext cx
[static]
 

Definition at line 162 of file CandSubShowerSR.cxx.

References CandSubShowerSR().

Referenced by AlgEventSRList::BuildEventFromUnassoc(), AlgEventSRList::CreatePrimaryShower(), AlgSubShowerSRList::FormHalo(), and AlgSubShowerSRList::RunAlg().

00164 {
00165   CandSubShowerSRHandle csh;
00166   new CandSubShowerSR(ah, csh, cx);        // csh owns the new CandSubShowerSR
00167   return csh;
00168 }


Friends And Related Function Documentation

friend class CandSubShowerSRHandle [friend]
 

Definition at line 23 of file CandSubShowerSR.h.

Referenced by CreateLocalHandle().


Member Data Documentation

Float_t CandSubShowerSR::AvgDev [protected]
 

Definition at line 42 of file CandSubShowerSR.h.

Referenced by CandSubShowerSR().

ClusterType::ClusterType_t CandSubShowerSR::ClusterID [protected]
 

Definition at line 43 of file CandSubShowerSR.h.

Referenced by CandSubShowerSR().

Double_t CandSubShowerSR::Energy [protected]
 

Definition at line 39 of file CandSubShowerSR.h.

Referenced by CandSubShowerSR().

PlaneView::PlaneView_t CandSubShowerSR::planeView [protected]
 

Definition at line 40 of file CandSubShowerSR.h.

Referenced by CandSubShowerSR().

Float_t CandSubShowerSR::ProbEM [protected]
 

Definition at line 44 of file CandSubShowerSR.h.

Referenced by CandSubShowerSR().

Float_t CandSubShowerSR::Slope [protected]
 

Definition at line 41 of file CandSubShowerSR.h.

Referenced by CandSubShowerSR().


The documentation for this class was generated from the following files:
Generated on Thu Nov 1 15:56:04 2007 for loon by  doxygen 1.3.9.1