00001 #include "CandDataQualityHandle.h" 00002 #include "CandDeadChipHandle.h" 00003 00004 #include "MessageService/MsgService.h" 00005 00006 ClassImp(CandDataQualityHandle) 00007 00008 CandDataQualityHandle::CandDataQualityHandle() 00009 { 00010 00011 } 00012 00013 CandDataQualityHandle::CandDataQualityHandle(const CandDataQualityHandle& cdh) : 00014 CandHandle(cdh) 00015 { 00016 00017 } 00018 CandDataQualityHandle::CandDataQualityHandle(CandDataQuality* cd) : 00019 CandHandle(cd) 00020 { 00021 00022 } 00023 00024 CandDataQualityHandle::~CandDataQualityHandle() 00025 { 00026 00027 } 00028 00029 CandDataQualityHandle* CandDataQualityHandle::DupHandle() const 00030 { 00031 return new CandDataQualityHandle(*this); 00032 } 00033 00034 Int_t CandDataQualityHandle::GetTime() const 00035 { 00036 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fTime; 00037 } 00038 00039 Int_t CandDataQualityHandle::GetRunType() const 00040 { 00041 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fRunType; 00042 } 00043 00044 Int_t CandDataQualityHandle::GetRun() const 00045 { 00046 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fRun; 00047 } 00048 00049 Int_t CandDataQualityHandle::GetSubRun() const 00050 { 00051 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fSubRun; 00052 } 00053 00054 Int_t CandDataQualityHandle::GetTimeFrame() const 00055 { 00056 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fTimeFrame; 00057 } 00058 00059 Int_t CandDataQualityHandle::GetSnarl() const 00060 { 00061 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fSnarl; 00062 } 00063 00064 Int_t CandDataQualityHandle::GetTriggerSource() const 00065 { 00066 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fTriggerSource; 00067 } 00068 00069 Int_t CandDataQualityHandle::GetTriggerTime() const 00070 { 00071 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fTriggerTime; 00072 } 00073 00074 Int_t CandDataQualityHandle::GetErrorCode() const 00075 { 00076 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fErrorCode; 00077 } 00078 00079 Int_t CandDataQualityHandle::GetCrateMask() const 00080 { 00081 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fCrateMask; 00082 } 00083 00084 Int_t CandDataQualityHandle::GetPreTriggerDigits() const 00085 { 00086 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fPreTriggerDigits; 00087 } 00088 00089 Int_t CandDataQualityHandle::GetPostTriggerDigits() const 00090 { 00091 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fPostTriggerDigits; 00092 } 00093 00094 Int_t CandDataQualityHandle::GetSnarlMultiplicity() const 00095 { 00096 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fSnarlMultiplicity; 00097 } 00098 00099 Int_t CandDataQualityHandle::GetSpillStatus() const 00100 { 00101 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fSpillStatus; 00102 } 00103 00104 Int_t CandDataQualityHandle::GetSpillType() const 00105 { 00106 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fSpillType; 00107 } 00108 00109 Int_t CandDataQualityHandle::GetSpillTimeError() const 00110 { 00111 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fSpillTimeError; 00112 } 00113 00114 Int_t CandDataQualityHandle::GetLiTrigger() const 00115 { 00116 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiTrigger; 00117 } 00118 00119 Int_t CandDataQualityHandle::GetLiTime() const 00120 { 00121 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiTime; 00122 } 00123 00124 Int_t CandDataQualityHandle::GetLiSubtractedTime() const 00125 { 00126 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiSubtractedTime; 00127 } 00128 00129 Int_t CandDataQualityHandle::GetLiRelativeTime() const 00130 { 00131 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiRelativeTime; 00132 } 00133 00134 Int_t CandDataQualityHandle::GetLiCalibPoint() const 00135 { 00136 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiCalibPoint; 00137 } 00138 00139 Int_t CandDataQualityHandle::GetLiCalibType() const 00140 { 00141 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiCalibType; 00142 } 00143 00144 Int_t CandDataQualityHandle::GetLiPulserBox() const 00145 { 00146 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiPulserBox; 00147 } 00148 00149 Int_t CandDataQualityHandle::GetLiPulserLed() const 00150 { 00151 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiPulserLed; 00152 } 00153 00154 Int_t CandDataQualityHandle::GetLiPulseHeight() const 00155 { 00156 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiPulseHeight; 00157 } 00158 00159 Int_t CandDataQualityHandle::GetLiPulseWidth() const 00160 { 00161 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fLiPulseWidth; 00162 } 00163 00164 CandDataQuality::DataQuality_t CandDataQualityHandle::GetDataQuality() const 00165 { 00166 return dynamic_cast<const CandDataQuality*>(GetCandBase())->fDataQuality; 00167 } 00168 00169 void CandDataQualityHandle::SetTime(Int_t time) 00170 { 00171 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fTime=time; 00172 } 00173 00174 void CandDataQualityHandle::SetRunType(Int_t runtype) 00175 { 00176 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fRunType=runtype; 00177 } 00178 00179 void CandDataQualityHandle::SetRun(Int_t run) 00180 { 00181 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fRun=run; 00182 } 00183 00184 void CandDataQualityHandle::SetSubRun(Int_t subrun) 00185 { 00186 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fSubRun=subrun; 00187 } 00188 00189 void CandDataQualityHandle::SetTimeFrame(Int_t timeframe) 00190 { 00191 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fTimeFrame=timeframe; 00192 } 00193 00194 void CandDataQualityHandle::SetSnarl(Int_t snarl) 00195 { 00196 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fSnarl=snarl; 00197 } 00198 00199 void CandDataQualityHandle::SetTriggerSource(Int_t trigsource) 00200 { 00201 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fTriggerSource=trigsource; 00202 } 00203 00204 void CandDataQualityHandle::SetTriggerTime(Int_t trigtime) 00205 { 00206 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fTriggerTime=trigtime; 00207 } 00208 00209 void CandDataQualityHandle::SetErrorCode(Int_t errorcode) 00210 { 00211 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fErrorCode=errorcode; 00212 } 00213 00214 void CandDataQualityHandle::SetCrateMask(Int_t cratemask) 00215 { 00216 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fCrateMask=cratemask; 00217 } 00218 00219 void CandDataQualityHandle::SetPreTriggerDigits(Int_t predigits) 00220 { 00221 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fPreTriggerDigits=predigits; 00222 } 00223 00224 void CandDataQualityHandle::SetPostTriggerDigits(Int_t postdigits) 00225 { 00226 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fPostTriggerDigits=postdigits; 00227 } 00228 00229 void CandDataQualityHandle::SetSnarlMultiplicity(Int_t snarldigits) 00230 { 00231 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fSnarlMultiplicity=snarldigits; 00232 } 00233 00234 void CandDataQualityHandle::SetSpillStatus(Int_t spillstatus) 00235 { 00236 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fSpillStatus=spillstatus; 00237 } 00238 00239 void CandDataQualityHandle::SetSpillType(Int_t spilltype) 00240 { 00241 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fSpillType=spilltype; 00242 } 00243 00244 void CandDataQualityHandle::SetSpillTimeError(Int_t gpserror) 00245 { 00246 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fSpillTimeError=gpserror; 00247 } 00248 00249 void CandDataQualityHandle::SetLiTrigger(Int_t litrigger) 00250 { 00251 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiTrigger=litrigger; 00252 } 00253 00254 void CandDataQualityHandle::SetLiTime(Int_t litime) 00255 { 00256 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiTime=litime; 00257 } 00258 00259 void CandDataQualityHandle::SetLiSubtractedTime(Int_t lisubtime) 00260 { 00261 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiSubtractedTime=lisubtime; 00262 } 00263 00264 void CandDataQualityHandle::SetLiRelativeTime(Int_t lireltime) 00265 { 00266 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiRelativeTime=lireltime; 00267 } 00268 00269 void CandDataQualityHandle::SetLiCalibPoint(Int_t calibpoint) 00270 { 00271 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiCalibPoint=calibpoint; 00272 } 00273 00274 void CandDataQualityHandle::SetLiCalibType(Int_t calibtype) 00275 { 00276 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiCalibType=calibtype; 00277 } 00278 00279 void CandDataQualityHandle::SetLiPulserBox(Int_t box) 00280 { 00281 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiPulserBox=box; 00282 } 00283 00284 void CandDataQualityHandle::SetLiPulserLed(Int_t led) 00285 { 00286 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiPulserLed=led; 00287 } 00288 00289 void CandDataQualityHandle::SetLiPulseHeight(Int_t pulseheight) 00290 { 00291 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiPulseHeight=pulseheight; 00292 } 00293 00294 void CandDataQualityHandle::SetLiPulseWidth(Int_t pulsewidth) 00295 { 00296 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fLiPulseWidth=pulsewidth; 00297 } 00298 00299 void CandDataQualityHandle::SetDataQuality(CandDataQuality::DataQuality_t dataquality) 00300 { 00301 dynamic_cast<CandDataQuality*>(GetOwnedCandBase())->fDataQuality=dataquality; 00302 } 00303 00304 Int_t CandDataQualityHandle::GetColdChips() const 00305 { 00306 Int_t ncoldchips=0; 00307 00308 TIter chipitr(this->GetDaughterIterator()); 00309 while(CandDeadChipHandle* cdh = dynamic_cast<CandDeadChipHandle*>(chipitr())){ 00310 if( (cdh->GetChipStatus()&CandDeadChip::kCold)==(CandDeadChip::kCold) ){ 00311 ncoldchips++; 00312 } 00313 } 00314 00315 return ncoldchips; 00316 } 00317 00318 Int_t CandDataQualityHandle::GetHotChips() const 00319 { 00320 Int_t nhotchips=0; 00321 00322 TIter chipitr(this->GetDaughterIterator()); 00323 while(CandDeadChipHandle* cdh = dynamic_cast<CandDeadChipHandle*>(chipitr())){ 00324 if( (cdh->GetChipStatus()&CandDeadChip::kHot)==(CandDeadChip::kHot) ){ 00325 nhotchips++; 00326 } 00327 } 00328 00329 return nhotchips; 00330 } 00331 00332 Int_t CandDataQualityHandle::GetBusyChips() const 00333 { 00334 Int_t nbusychips=0; 00335 00336 TIter chipitr(this->GetDaughterIterator()); 00337 while(CandDeadChipHandle* cdh = dynamic_cast<CandDeadChipHandle*>(chipitr())){ 00338 if( (cdh->GetChipStatus()&CandDeadChip::kBusy)==(CandDeadChip::kBusy) ){ 00339 nbusychips++; 00340 } 00341 } 00342 00343 return nbusychips; 00344 } 00345 00346 Int_t CandDataQualityHandle::GetReadoutErrors() const 00347 { 00348 Int_t nreadouterrors=0; 00349 00350 TIter chipitr(this->GetDaughterIterator()); 00351 while(CandDeadChipHandle* cdh = dynamic_cast<CandDeadChipHandle*>(chipitr())){ 00352 if( (cdh->GetChipStatus()&CandDeadChip::kError)==(CandDeadChip::kError) ){ 00353 nreadouterrors++; 00354 } 00355 } 00356 00357 return nreadouterrors; 00358 } 00359 00360 CandDeadChip::ChipStatus_t CandDataQualityHandle::GetChipStatus(RawChannelId rawch) const 00361 { 00362 CandDeadChip::ChipStatus_t chipstatus(CandDeadChip::kOkay); 00363 00364 TIter chipitr(this->GetDaughterIterator()); 00365 while(CandDeadChipHandle* cdh = dynamic_cast<CandDeadChipHandle*>(chipitr())){ 00366 if( cdh->IsSameChip(rawch) ){ 00367 chipstatus = cdh->GetChipStatus(); 00368 } 00369 } 00370 00371 return chipstatus; 00372 } 00373 00374 XXXITRIMP(CandDataQualityHandle) 00375
1.3.9.1