#ifndef STNTUPLE_TStnDeadList_hh #define STNTUPLE_TStnDeadList_hh #include "TObject.h" #include "TString.h" class TStnDeadList: public TObject { protected: TString fObjName; // name of this for list searching protected: int fRunNumber; int fNBadCes; Short_t fBadCes[9216]; int fNBadPes; Short_t fBadPes[6400]; int fNBadCpr; Short_t fBadCpr[1536]; int fNBadCcr; Short_t fBadCcr[480]; //----------------------------------------------------------------------------- // methods //----------------------------------------------------------------------------- public: // ****** constructors and destructor TStnDeadList(); ~TStnDeadList() {} // ****** accessors Int_t RunNumber () { return fRunNumber; } Int_t NCesEntries () const { return fNBadCes; } Int_t CesSide (Int_t i) const { return (fBadCes[i]>>13)&0x01; } Int_t CesWedge (Int_t i) const { return (fBadCes[i]>> 8)&0x1F; } Int_t CesView (Int_t i) const { return (fBadCes[i]>> 7)&0x01; } Int_t CesChannel (Int_t i) const { return (fBadCes[i] )&0x7F; } Short_t* CesArray () { return fBadCes; } Int_t NPesEntries () const { return fNBadPes; } Int_t PesSide (Int_t i) const { return (fBadPes[i]>>12)&0x01; } Int_t PesWedge (Int_t i) const { return (fBadPes[i]>> 9)&0x07; } Int_t PesLayer (Int_t i) const { return (fBadPes[i]>> 8)&0x01; } Int_t PesChannel (Int_t i) const { return (fBadPes[i] )&0xFF; } Short_t* PesArray () { return fBadPes; } Int_t NCprEntries () const { return fNBadCpr; } Int_t CprSide (Int_t i) const { return (fBadCpr[i]>> 5)&0x01; } Int_t CprWedge (Int_t i) const { return (fBadCpr[i]>> 8)&0x1F; } Int_t CprChannel (Int_t i) const { return (fBadCpr[i] )&0x1F; } Short_t* CprArray () { return fBadCpr; } Int_t NCcrEntries () const { return fNBadCcr; } Int_t CcrSide (Int_t i) const { return (fBadCcr[i]>> 4)&0x01; } Int_t CcrWedge (Int_t i) const { return (fBadCcr[i]>> 8)&0x1F; } Int_t CcrChannel (Int_t i) const { return (fBadCcr[i] )&0x0F; } Short_t* CcrArray () { return fBadCcr; } void SetRunNumber (Int_t r) { fRunNumber = r; } void SetNCesEntries (Int_t n) { fNBadCes = n; } void SetNPesEntries (Int_t n) { fNBadPes = n; } void SetNCprEntries (Int_t n) { fNBadCpr = n; } void SetNCcrEntries (Int_t n) { fNBadCcr = n; } const char* GetName() const { return fObjName.Data(); } void Print(Option_t* opt = "") const ; void Clear(Option_t* opt = ""); // ****** schema evolution ClassDef(TStnDeadList,1) }; #endif