/*************************************************************************** * * * * * Originally created by J.S. Graulich, May 2011 * * * ***************************************************************************/ #include "MDdataWordVLSB.h" MDdataWordVLSB::MDdataWordVLSB(void *d):MDdataWord(d){} bool MDdataWordVLSB::IsValid(){ if (!_data) return false; if (Get32bWordPtr()[0]==MDdataWordVLSB::Error_Word) return false; // if ((Get32bWordPtr()[0] & MDdataWordVLSB::Adc_Mask) == 0) return false; // the bank length word can also be a valid word. return true; } void MDdataWordVLSB::Dump(int atTheTime){ cout << *this; return; } //////////////////////////////////////////////////////////////////////// ostream &operator<<(ostream &s,MDdataWordVLSB &dw){ s << " VLSB Word : "; if (dw.IsValid()) { s << "Event: " << dw.GetEventNum() << " ; Channel: " << dw.GetChannel() << " ; Adc: " << dw.GetAdc() ; if (dw.GetDiscriBit()) { s << " (over thr) "; } else { s << " (under thr) "; } s << " ; Tdc: " << dw.GetTdc() << endl ; } else { s << "INVALID : " << showbase << hex << dw.Get32bWordPtr()[0] << ")" << dec << noshowbase << endl; } return s; }