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