00001
00002 #ifndef AcdTile_H
00003 #define AcdTile_H
00004
00005 #include "AcdId.h"
00006 #include "TObject.h"
00007
00022 class AcdTile: public TObject {
00023 private:
00035 enum {
00036 ACD_K_PMT = 12,
00037 ACD_V_PMT = 0,
00038 ACD_M_PMT = ((1 << ACD_K_PMT) - 1),
00039 ACD_K_VETO = 1,
00040 ACD_V_VETO = (ACD_K_PMT + ACD_V_PMT),
00041 ACD_M_VETO = ((1 << ACD_K_VETO) - 1),
00042 ACD_K_HIGH = 1,
00043 ACD_V_HIGH = (ACD_K_VETO + ACD_V_VETO),
00044 ACD_M_HIGH = ((1 << ACD_K_HIGH) - 1)
00045 };
00047 UShort_t m_tag;
00049 AcdId m_tileId;
00050 public:
00051 AcdTile();
00052 AcdTile(UInt_t id, short base=10, short used=1);
00053 AcdTile(AcdId &id);
00054 virtual ~AcdTile();
00055 AcdId* getId() { return &m_tileId; };
00057 UShort_t getPulseHeight();
00059 UChar_t getVeto();
00061 UChar_t getCNO();
00062
00063 Bool_t setPulseHeight(UShort_t phaVal);
00064 Bool_t setVeto(UChar_t hitVal);
00065 Bool_t setCNO(UChar_t hitVal);
00066
00068 Int_t Compare(const TObject *obj) const;
00069 Bool_t IsSortable() const;
00070
00071 ClassDef(AcdTile,4)
00072 };
00073
00074 #endif