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

FarDetSlice.cxx

Go to the documentation of this file.
00001 
00002 #include "FarDetSlice.h"
00003 #include "FarDetSliceHandle.h"
00004 
00005 #include "Algorithm/AlgHandle.h"
00006 
00007 ClassImp(FarDetSlice)
00008 
00009 FarDetSliceHandle FarDetSlice::MakeCandidate(AlgHandle &ah,CandContext &cx)
00010 {
00011   FarDetSliceHandle cth;
00012   new FarDetSlice(ah, cth, cx);        
00013   return cth;
00014 }
00015   
00016 FarDetSlice::FarDetSlice() :
00017   fMaxPlaneCharge(0.0), 
00018   fEventId(-1), 
00019   fEventIdSM1(-1), fEventIdSM2(-1), fEventIdX(-1), 
00020   fEdgesSM1(-1), fEdgesSM2(-1), fEdges(-1),
00021   fGoodUPlanes(0), fGoodVPlanes(0),
00022   fGoodPlanes(0), fGoodStrips(0)
00023 {
00024   for(Int_t i=0;i<11;i++){
00025     fFidChargeSM1[i]=0.0;
00026     fFidChargeSM2[i]=0.0;
00027     fMeanXPosSM1[i]=-999.9;
00028     fMeanXPosSM2[i]=-999.9;
00029     fMeanYPosSM1[i]=-999.9;
00030     fMeanYPosSM2[i]=-999.9;
00031     fMeanZPosSM1[i]=-999.9;
00032     fMeanZPosSM2[i]=-999.9;
00033   }   
00034 }
00035 
00036 FarDetSlice::FarDetSlice(AlgHandle &ah) :
00037   CandSlice(ah),
00038   fMaxPlaneCharge(0.0), 
00039   fEventId(-1), 
00040   fEventIdSM1(-1), fEventIdSM2(-1), fEventIdX(-1), 
00041   fEdgesSM1(-1), fEdgesSM2(-1), fEdges(-1),
00042   fGoodUPlanes(0), fGoodVPlanes(0),
00043   fGoodPlanes(0), fGoodStrips(0)
00044 {
00045   for(Int_t i=0;i<11;i++){
00046     fFidChargeSM1[i]=0.0;
00047     fFidChargeSM2[i]=0.0;
00048     fMeanXPosSM1[i]=-999.9;
00049     fMeanXPosSM2[i]=-999.9;
00050     fMeanYPosSM1[i]=-999.9;
00051     fMeanYPosSM2[i]=-999.9;
00052     fMeanZPosSM1[i]=-999.9;
00053     fMeanZPosSM2[i]=-999.9;
00054   } 
00055 }
00056  
00057 FarDetSlice::FarDetSlice(AlgHandle &ah, CandHandle &ch, CandContext &cx) :
00058   CandSlice(ah),
00059   fMaxPlaneCharge(0.0), 
00060   fEventId(-1), 
00061   fEventIdSM1(-1), fEventIdSM2(-1), fEventIdX(-1), 
00062   fEdgesSM1(-1), fEdgesSM2(-1), fEdges(-1),
00063   fGoodUPlanes(0), fGoodVPlanes(0),
00064   fGoodPlanes(0), fGoodStrips(0)
00065 {
00066   for(Int_t i=0;i<11;i++){
00067     fFidChargeSM1[i]=0.0;
00068     fFidChargeSM2[i]=0.0;
00069     fMeanXPosSM1[i]=-999.9;
00070     fMeanXPosSM2[i]=-999.9;
00071     fMeanYPosSM1[i]=-999.9;
00072     fMeanYPosSM2[i]=-999.9;
00073     fMeanZPosSM1[i]=-999.9;
00074     fMeanZPosSM2[i]=-999.9;
00075   }
00076 
00077   SetLocalHandle(new FarDetSliceHandle(this));
00078   { FarDetSliceHandle cth(this); ch = cth; }
00079   ah.RunAlg(ch, cx);
00080 }
00081   
00082 FarDetSlice::FarDetSlice(const FarDetSlice &rhs) :
00083   CandSlice(rhs),
00084   fMaxPlaneCharge(rhs.fMaxPlaneCharge), 
00085   fEventId(rhs.fEventId), 
00086   fEventIdSM1(rhs.fEventIdSM1), fEventIdSM2(rhs.fEventIdSM2), fEventIdX(rhs.fEventIdX), 
00087   fEdgesSM1(rhs.fEdgesSM1), fEdgesSM2(rhs.fEdgesSM2), fEdges(rhs.fEdges),
00088   fGoodUPlanes(rhs.fGoodUPlanes), fGoodVPlanes(rhs.fGoodVPlanes),
00089   fGoodPlanes(rhs.fGoodPlanes), fGoodStrips(rhs.fGoodStrips)
00090 {
00091   for(Int_t i=0;i<11;i++){
00092     fFidChargeSM1[i]=rhs.fFidChargeSM1[i];
00093     fFidChargeSM2[i]=rhs.fFidChargeSM2[i];
00094     fMeanXPosSM1[i]=rhs.fMeanXPosSM1[i];
00095     fMeanXPosSM2[i]=rhs.fMeanXPosSM2[i];
00096     fMeanYPosSM1[i]=rhs.fMeanYPosSM1[i];
00097     fMeanYPosSM2[i]=rhs.fMeanYPosSM2[i];
00098     fMeanZPosSM1[i]=rhs.fMeanZPosSM1[i];
00099     fMeanZPosSM2[i]=rhs.fMeanZPosSM2[i];
00100   } 
00101 }
00102   
00103 FarDetSlice::~FarDetSlice()
00104 {
00105 
00106 }
00107   
00108 FarDetSlice* FarDetSlice::Dup() const
00109 {
00110   FarDetSlice *cb = new FarDetSlice(*this);
00111   cb->CreateLocalHandle();
00112   TIter iterdau = GetDaughterIterator();
00113   CandHandle *dau;
00114   while ((dau=(CandHandle *) iterdau())) cb->AddDaughterLink(*dau);
00115   return cb;
00116 }
00117   
00118 void FarDetSlice::CreateLocalHandle()
00119 {
00120   this->SetLocalHandle(new FarDetSliceHandle(this));
00121 }

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