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

TrkClsSlpSR.cxx

Go to the documentation of this file.
00001 
00002 // $Id: TrkClsSlpSR.cxx,v 1.11 2004/04/10 00:49:14 gmieg Exp $
00003 //
00004 // TrkClsSlpSR
00005 //
00006 // Author:  R. Lee 2001.04.04
00008 
00009 #include <iostream>
00010 #include <string>
00011 
00012 #include "CandTrackSR/TrackClusterSR.h"
00013 #include "CandTrackSR/TrkClsSlpSR.h"
00014 #include "MessageService/MsgService.h"
00015 #include "Navigation/XxxItr.h"
00016 
00017 ClassImp(TrkClsSlpSR)
00018 
00019 //______________________________________________________________________
00020 CVSID("$Id: TrkClsSlpSR.cxx,v 1.11 2004/04/10 00:49:14 gmieg Exp $");
00021 
00022 //______________________________________________________________________
00023 TrkClsSlpSR::TrkClsSlpSR() :
00024   fTrackCluster(0)
00025 , fForwardSlope(0.)
00026 , fBackwardSlope(0.)
00027 , fIndex(0)
00028 {
00029 }
00030 
00031 //______________________________________________________________________
00032 TrkClsSlpSR::TrkClsSlpSR(TrackClusterSR *tc) :
00033   fTrackCluster(0)
00034 , fForwardSlope(0.)
00035 , fBackwardSlope(0.)
00036 , fIndex(0)
00037 {
00038 
00039 // copy trackcluster
00040   if (tc) fTrackCluster = new TrackClusterSR(*tc);
00041 }
00042 
00043 //______________________________________________________________________
00044 TrkClsSlpSR::TrkClsSlpSR(const TrkClsSlpSR &rhs) :   // Copy Constructor
00045   TObject(rhs)
00046 , fTrackCluster(0)
00047 , fForwardSlope(rhs.fForwardSlope)
00048 , fBackwardSlope(rhs.fBackwardSlope)
00049 , fIndex(rhs.fIndex)
00050 {
00051   if (rhs.fTrackCluster)
00052     fTrackCluster = new TrackClusterSR(*rhs.fTrackCluster);
00053 }
00054 
00055 //______________________________________________________________________
00056 TrkClsSlpSR::~TrkClsSlpSR()
00057 {
00058   delete fTrackCluster;
00059 }
00060 
00061 //______________________________________________________________________
00062 Bool_t TrkClsSlpSR::IsEquivalent(const TrkClsSlpSR *rhs) const
00063 {
00064   if (!(this->fForwardSlope  == rhs->fForwardSlope   &&
00065         this->fBackwardSlope == rhs->fBackwardSlope  &&
00066         this->fIndex         == rhs->fIndex          )) {
00067     MSG("VCand", Msg::kDebug)
00068                           << "TrkClsSlpSR primitive members [not ok]\n";
00069     return false;
00070   }
00071 
00072   if (this->fTrackCluster == rhs->fTrackCluster) {
00073     MSG("VCand", Msg::kDebug)
00074                      << "TrkClsSlpSR::fTrackCluster \t[shallow copy]\n";
00075     return false;
00076   }
00077 
00078   if (!((this->fTrackCluster)->IsEquivalent(rhs->fTrackCluster))) {
00079     MSG("VCand", Msg::kDebug) << "TrkClsSlpSR fTrackCluster [not ok]\n";
00080     return false;
00081   }
00082 
00083   return true;
00084 }
00085 
00086 XXXITRIMP(TrkClsSlpSR)

Generated on Mon Feb 15 11:07:46 2010 for loon by  doxygen 1.3.9.1