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