Bitstream Interpretation Library (BIL)  0.1
WordRegister.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 #ifndef BIL_WORDREGISTER_HPP
8 #define BIL_WORDREGISTER_HPP
9 
11 
12 
13 namespace bil {
14 
21  class WordRegister: public Register {
22  public:
23 
24  /**********************************************************************/
25  /* CONSTRUCTION / DESTRUCTION */
26  /**********************************************************************/
27 
32  WordRegister(RegisterAddress::address_t address, const std::string& name, bool writable = true, bool readable = true);
33 
34 
35  /**********************************************************************/
36  /* REGISTER I/O */
37  /**********************************************************************/
38 
45  virtual void write(const boost::uint32_t* words, size_t wordCount);
46 
53  virtual void read(boost::uint32_t* words, size_t wordCount) const;
54 
55 
56  /**********************************************************************/
57  /* REGISTER VALUE */
58  /**********************************************************************/
59 
64  void value(boost::uint32_t val);
65 
70  boost::uint32_t value() const;
71 
72 
73  private:
74 
75  WordRegister(const Register&);
76  WordRegister& operator=(const Register&);
77 
78  boost::uint32_t m_value;
79 
80  };
81 
82 }
83 
84 #endif