00001 00002 #include "MessageService/MsgService.h" 00003 #include "JobControl/JobCModuleRegistry.h" 00004 #include "Algorithm/AlgHandle.h" 00005 00006 #include "CandDataQuality.h" 00007 #include "CandDataQualityHandle.h" 00008 00009 ClassImp(CandDataQuality) 00010 00011 CandDataQuality::CandDataQuality() : 00012 fTime(-1), 00013 fRunType(-1), 00014 fRun(-1), 00015 fSubRun(-1), 00016 fTimeFrame(-1), 00017 fSnarl(-1), 00018 fTriggerSource(-1), 00019 fTriggerTime(-1), 00020 fErrorCode(0), 00021 fCrateMask(0), 00022 fPreTriggerDigits(0), 00023 fPostTriggerDigits(0), 00024 fSpillStatus(-1), 00025 fSpillType(-1), 00026 fSpillTimeError(-1), 00027 fLiTrigger(0), 00028 fLiTime(-99999), 00029 fLiSubtractedTime(-99999), 00030 fLiRelativeTime(-99999), 00031 fLiCalibPoint(-1), 00032 fLiCalibType(-1), 00033 fLiPulserBox(-1), 00034 fLiPulserLed(-1), 00035 fLiPulseHeight(-1), 00036 fLiPulseWidth(-1), 00037 fDataQuality(CandDataQuality::kOkay) 00038 { 00039 00040 } 00041 00042 CandDataQuality::CandDataQuality(AlgHandle& ah) : 00043 CandBase(ah), 00044 fTime(-1), 00045 fRunType(-1), 00046 fRun(-1), 00047 fSubRun(-1), 00048 fTimeFrame(-1), 00049 fSnarl(-1), 00050 fTriggerSource(-1), 00051 fTriggerTime(-1), 00052 fErrorCode(0), 00053 fCrateMask(0), 00054 fPreTriggerDigits(0), 00055 fPostTriggerDigits(0), 00056 fSpillStatus(-1), 00057 fSpillType(-1), 00058 fSpillTimeError(-1), 00059 fLiTrigger(0), 00060 fLiTime(-99999), 00061 fLiSubtractedTime(-99999), 00062 fLiRelativeTime(-99999), 00063 fLiCalibPoint(-1), 00064 fLiCalibType(-1), 00065 fLiPulserBox(-1), 00066 fLiPulserLed(-1), 00067 fLiPulseHeight(-1), 00068 fLiPulseWidth(-1), 00069 fDataQuality(CandDataQuality::kOkay) 00070 { 00071 00072 } 00073 00074 CandDataQuality::CandDataQuality(AlgHandle& ah, CandHandle& ch, CandContext& cx) : 00075 CandBase(ah), 00076 fTime(-1), 00077 fRunType(-1), 00078 fRun(-1), 00079 fSubRun(-1), 00080 fTimeFrame(-1), 00081 fSnarl(-1), 00082 fTriggerSource(-1), 00083 fTriggerTime(-1), 00084 fErrorCode(0), 00085 fCrateMask(0), 00086 fPreTriggerDigits(0), 00087 fPostTriggerDigits(0), 00088 fSpillStatus(-1), 00089 fSpillType(-1), 00090 fSpillTimeError(-1), 00091 fLiTrigger(0), 00092 fLiTime(-99999), 00093 fLiSubtractedTime(-99999), 00094 fLiRelativeTime(-99999), 00095 fLiCalibPoint(-1), 00096 fLiCalibType(-1), 00097 fLiPulserBox(-1), 00098 fLiPulserLed(-1), 00099 fLiPulseHeight(-1), 00100 fLiPulseWidth(-1), 00101 fDataQuality(CandDataQuality::kOkay) 00102 { 00103 SetLocalHandle(new CandDataQualityHandle(this)); 00104 { CandDataQualityHandle cth(this); ch = cth; } 00105 ah.RunAlg(ch, cx); 00106 } 00107 00108 CandDataQuality::CandDataQuality(const CandDataQuality& rhs) : 00109 CandBase(rhs), 00110 fTime(rhs.fTime), 00111 fRunType(rhs.fRunType), 00112 fRun(rhs.fRun), 00113 fSubRun(rhs.fSubRun), 00114 fTimeFrame(rhs.fTimeFrame), 00115 fSnarl(rhs.fSnarl), 00116 fTriggerSource(rhs.fTriggerSource), 00117 fTriggerTime(rhs.fTriggerTime), 00118 fErrorCode(rhs.fErrorCode), 00119 fCrateMask(rhs.fCrateMask), 00120 fPreTriggerDigits(rhs.fPreTriggerDigits), 00121 fPostTriggerDigits(rhs.fPostTriggerDigits), 00122 fSnarlMultiplicity(rhs.fSnarlMultiplicity), 00123 fSpillStatus(rhs.fSpillStatus), 00124 fSpillType(rhs.fSpillType), 00125 fSpillTimeError(rhs.fSpillTimeError), 00126 fLiTrigger(rhs.fLiTrigger), 00127 fLiTime(rhs.fLiTime), 00128 fLiSubtractedTime(rhs.fLiSubtractedTime), 00129 fLiRelativeTime(rhs.fLiRelativeTime), 00130 fLiCalibPoint(rhs.fLiCalibPoint), 00131 fLiCalibType(rhs.fLiCalibType), 00132 fLiPulserBox(rhs.fLiPulserBox), 00133 fLiPulserLed(rhs.fLiPulserLed), 00134 fLiPulseHeight(rhs.fLiPulseHeight), 00135 fLiPulseWidth(rhs.fLiPulseWidth), 00136 fDataQuality(rhs.fDataQuality) 00137 { 00138 00139 } 00140 00141 CandDataQuality::~CandDataQuality() 00142 { 00143 00144 } 00145 00146 CandDataQuality* CandDataQuality::Dup() const 00147 { 00148 CandDataQuality *cb = new CandDataQuality(*this); 00149 cb->CreateLocalHandle(); 00150 TIter iterdau = GetDaughterIterator(); 00151 CandHandle *dau; 00152 while ((dau=(CandHandle *) iterdau())) cb->AddDaughterLink(*dau); 00153 return cb; 00154 } 00155 00156 void CandDataQuality::CreateLocalHandle() 00157 { 00158 this->SetLocalHandle(new CandDataQualityHandle(this)); 00159 } 00160 00161 CandDataQualityHandle CandDataQuality::MakeCandidate(AlgHandle& ah, CandContext& cx) 00162 { 00163 CandDataQualityHandle cdh; 00164 new CandDataQuality(ah,cdh,cx); 00165 return cdh; 00166 } 00167 00168 00169