Generic hardware access library
|
00001 #ifndef __VMEHardwareAddress 00002 #define __VMEHardwareAddress 00003 00004 #include <iostream> 00005 #include <string> 00006 00007 #include "hal/GeneralHardwareAddress.hh" 00008 #include "hal/IllegalValueException.hh" 00009 00010 namespace HAL { 00011 00035 class VMEHardwareAddress : public GeneralHardwareAddress { 00036 public: 00040 VMEHardwareAddress( uint32_t address, 00041 uint32_t addressModifier, 00042 uint32_t dataWidth ) 00043 throw( IllegalValueException ); 00044 00045 virtual uint32_t getAddressModifier() const 00046 throw(); 00047 00048 virtual bool isIOSpace() const 00049 throw (IllegalOperationException); 00050 00051 virtual void print( std::ostream& os = std::cout ) const; 00052 00053 virtual GeneralHardwareAddress* clone() const; 00054 00055 private: 00059 std::string getAddressSpaceString() const; 00060 00061 uint32_t addressModifier_; 00062 00063 }; 00064 00065 } /* namespace HAL */ 00066 00067 #endif /* __VMEHardwareAddress */