00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef STSVTHYBRIDBADANODE_HH
00014 #define STSVTHYBRIDBADANODE_HH
00015
00016 #include "StSvtClassLibrary/StSvtHybridObject.hh"
00017
00018 #define MAX_NUMBER_OF_ANODES 240
00019
00020 class StSvtHybridBadAnodes:public StSvtHybridObject
00021 {
00022 public:
00023 StSvtHybridBadAnodes();
00024 StSvtHybridBadAnodes(int barrel, int ladder, int wafer, int hybrid);
00025 ~StSvtHybridBadAnodes();
00026
00027 void setBadAnode(int anode);
00028 void setNotBadAnode(int anode);
00029 Bool_t isBadAnode(int anode);
00030 void reset();
00031
00032 void addOverloadedAdc(int anode, Bool_t isBad, int nEvents);
00033 void addNullAdc(int anode, Bool_t isBad, int nEvents);
00034 void addHighOccup(int anode, Bool_t isBad, int nEvents);
00035 void addBadRMS(int anode, Bool_t isBad, int nEvents);
00036
00037 float getOverloadedAdc(int anode){return mOverloadedAdc[anode-1];}
00038 float getNullAdc(int anode){return mNullAdc[anode-1];}
00039 float getHighOccup(int anode){return mHighOccup[anode-1];}
00040 float getBadRMS(int anode){return mBadRMS[anode-1];}
00041
00042 protected:
00043
00044 Bool_t mBadAnode[MAX_NUMBER_OF_ANODES];
00045 int mNBadAnodes;
00046
00047
00048 float mOverloadedAdc[MAX_NUMBER_OF_ANODES];
00049 float mNullAdc[MAX_NUMBER_OF_ANODES];
00050 float mHighOccup[MAX_NUMBER_OF_ANODES];
00051 float mBadRMS[MAX_NUMBER_OF_ANODES];
00052 };
00053
00054 #endif