00001 // ===================================================================== 00024 // ===================================================================== 00025 #ifndef CLDAQ__TCAMACINTERRUPTREGISTERMODULE_HH 00026 #define CLDAQ__TCAMACINTERRUPTREGISTERMODULE_HH 00027 00028 #include "Tglobals.h" 00029 #include "TCamacModule.hh" 00030 00031 class TDataSegment; 00032 class TDataElement; 00033 00034 00054 class TCamacInterruptRegisterModule 00055 : public TCamacModule 00056 { 00057 00058 public: 00059 TCamacInterruptRegisterModule( TCamacCrateController* cc7x00, Tint slot, Tint nch = 1, Tdata_t datalen = t16bitModule ); 00060 TCamacInterruptRegisterModule( const TCamacInterruptRegisterModule& right ); 00061 ~TCamacInterruptRegisterModule(); 00062 00063 public: 00064 const TCamacInterruptRegisterModule& operator=( const TCamacInterruptRegisterModule& right ); 00065 Tbool operator==( const TCamacInterruptRegisterModule& right ) const; 00066 Tbool operator!=( const TCamacInterruptRegisterModule& right ) const; 00067 Tvoid FillData( TDataElement& element, Tint channel ); 00068 00069 public: 00070 Tint Initialize(); 00071 Tint ReadInterruptRegister(); 00072 Tint ReadInterruptMaskRegister(); 00073 Tint ClearInterruptMaskRegister(); 00074 Tint WriteInterruptMaskRegister( Tint data ); 00075 Tint ClearInterruptRegister(); 00076 Tint DisableInterruptOutput(); 00077 Tint EnableInterruptOutput(); 00078 00079 }; 00080 00081 #endif