00001 00002 #include "FarDetShieldPlank.h" 00003 #include "FarDetShieldPlankHandle.h" 00004 00005 #include "Algorithm/AlgHandle.h" 00006 00007 ClassImp(FarDetShieldPlank) 00008 00009 FarDetShieldPlankHandle FarDetShieldPlank::MakeCandidate(AlgHandle& ah, CandContext& cx) 00010 { 00011 FarDetShieldPlankHandle csh; 00012 new FarDetShieldPlank(ah,csh,cx); 00013 return csh; 00014 } 00015 00016 FarDetShieldPlank::FarDetShieldPlank() 00017 { 00018 fSection=-1; 00019 fSubSection=-1; 00020 fPlane=-1; 00021 fPlank=-1; 00022 fNStrips=0; 00023 fGeomErrors=0; 00024 fX=0.0; 00025 fY=0.0; 00026 fHalfLength=0.0; 00027 00028 for(Int_t i=0;i<2;i++){ 00029 fZ[i]=0.0; 00030 fChargeNone[i]=0.0; 00031 fChargePE[i]=0.0; 00032 fGreenFibre[i]=0.0; 00033 fWlsPigtail[i]=0.0; 00034 fClearFibre[i]=0.0; 00035 } 00036 00037 for(Int_t i=0;i<3;i++){ 00038 fRawTime[i]=0.0; 00039 fCalTime[i]=0.0; 00040 } 00041 } 00042 00043 FarDetShieldPlank::FarDetShieldPlank(AlgHandle& ah) : 00044 CandBase(ah) 00045 { 00046 fSection=-1; 00047 fSubSection=-1; 00048 fPlane=-1; 00049 fPlank=-1; 00050 fNStrips=0; 00051 fGeomErrors=0; 00052 fX=0.0; 00053 fY=0.0; 00054 fHalfLength=0.0; 00055 00056 for(Int_t i=0;i<2;i++){ 00057 fZ[i]=0.0; 00058 fChargeNone[i]=0.0; 00059 fChargePE[i]=0.0; 00060 fGreenFibre[i]=0.0; 00061 fWlsPigtail[i]=0.0; 00062 fClearFibre[i]=0.0; 00063 } 00064 00065 for(Int_t i=0;i<3;i++){ 00066 fRawTime[i]=0.0; 00067 fCalTime[i]=0.0; 00068 } 00069 } 00070 00071 FarDetShieldPlank::FarDetShieldPlank(AlgHandle& ah, CandHandle& ch, CandContext& cx) : 00072 CandBase(ah) 00073 { 00074 fSection=-1; 00075 fSubSection=-1; 00076 fPlane=-1; 00077 fPlank=-1; 00078 fNStrips=0; 00079 fGeomErrors=0; 00080 fX=0.0; 00081 fY=0.0; 00082 fHalfLength=0.0; 00083 00084 for(Int_t i=0;i<2;i++){ 00085 fZ[i]=0.0; 00086 fChargeNone[i]=0.0; 00087 fChargePE[i]=0.0; 00088 fGreenFibre[i]=0.0; 00089 fWlsPigtail[i]=0.0; 00090 fClearFibre[i]=0.0; 00091 } 00092 00093 for(Int_t i=0;i<3;i++){ 00094 fRawTime[i]=0.0; 00095 fCalTime[i]=0.0; 00096 } 00097 00098 SetLocalHandle(new FarDetShieldPlankHandle(this)); 00099 { FarDetShieldPlankHandle cth(this); ch = cth; } 00100 ah.RunAlg(ch, cx); 00101 } 00102 00103 FarDetShieldPlank::FarDetShieldPlank(const FarDetShieldPlank& rhs) : 00104 CandBase(rhs) 00105 { 00106 fSection=rhs.fSection; 00107 fSubSection=rhs.fSubSection; 00108 fPlane=rhs.fPlane; 00109 fPlank=rhs.fPlank; 00110 fNStrips=rhs.fNStrips; 00111 fGeomErrors=rhs.fGeomErrors; 00112 fX=rhs.fX; 00113 fY=rhs.fY; 00114 fHalfLength=rhs.fHalfLength; 00115 00116 for(Int_t i=0;i<2;i++){ 00117 fZ[i]=rhs.fZ[i]; 00118 fChargeNone[i]=rhs.fChargeNone[i]; 00119 fChargePE[i]=rhs.fChargePE[i]; 00120 fGreenFibre[i]=rhs.fGreenFibre[i]; 00121 fWlsPigtail[i]=rhs.fWlsPigtail[i]; 00122 fClearFibre[i]=rhs.fClearFibre[i]; 00123 } 00124 00125 for(Int_t i=0;i<3;i++){ 00126 fRawTime[i]=rhs.fRawTime[i]; 00127 fCalTime[i]=rhs.fCalTime[i]; 00128 } 00129 } 00130 00131 FarDetShieldPlank::~FarDetShieldPlank() 00132 { 00133 } 00134 00135 FarDetShieldPlank* FarDetShieldPlank::Dup() const 00136 { 00137 FarDetShieldPlank* newone = new FarDetShieldPlank(*this); 00138 newone->CreateLocalHandle(); 00139 TIter iter = this->GetDaughterIterator(); 00140 CandHandle* ch; 00141 while ((ch=(CandHandle*)iter())) newone->AddDaughterLink(*ch); 00142 return newone; 00143 } 00144 00145 void FarDetShieldPlank::CreateLocalHandle() 00146 { 00147 this->SetLocalHandle(new FarDetShieldPlankHandle(this)); 00148 }
1.3.9.1