00001 // ===================================================================== 00028 // ===================================================================== 00029 #ifndef CLDAQ__TCAMACINTERRUPTREGISTERMODULE_HH 00030 #define CLDAQ__TCAMACINTERRUPTREGISTERMODULE_HH 00031 00032 #include "Tglobals.h" 00033 #include "TCamacModule.hh" 00034 00035 class TDataSegment; 00036 class TDataElement; 00037 00038 00058 class TCamacInterruptRegisterModule 00059 : public TCamacModule 00060 { 00061 00062 public: 00063 TCamacInterruptRegisterModule( TCamacCrateController* cc7x00, Tint slot, Tint nch = 1, Tdata_t datalen = t16bitModule ); 00064 TCamacInterruptRegisterModule( const TCamacInterruptRegisterModule& right ); 00065 ~TCamacInterruptRegisterModule(); 00066 00067 public: 00068 const TCamacInterruptRegisterModule& operator=( const TCamacInterruptRegisterModule& right ); 00069 Tbool operator==( const TCamacInterruptRegisterModule& right ) const; 00070 Tbool operator!=( const TCamacInterruptRegisterModule& right ) const; 00071 Tvoid FillData( TDataElement& element, Tint channel ); 00072 00073 public: 00074 Tint Initialize(); 00075 Tint ReadInterruptRegister(); 00076 Tint ReadInterruptMaskRegister(); 00077 Tint ClearInterruptMaskRegister(); 00078 Tint WriteInterruptMaskRegister( Tint data ); 00079 Tint ClearInterruptRegister(); 00080 Tint DisableInterruptOutput(); 00081 Tint EnableInterruptOutput(); 00082 00083 #ifdef __CLDAQ_ROOT_DLL 00084 ClassDef(TCamacInterruptRegisterModule,0) 00085 #endif 00086 00087 }; 00088 00089 #endif