Bitstream Interpretation Library (BIL)  0.1
V5CMDRegister.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 #ifndef BIL_V5CMDREGISTER_HPP
8 #define BIL_V5CMDREGISTER_HPP
9 
12 
13 
14 namespace bil {
15 
16  class V5CRCRegister;
17 
18 
26  class V5CMDRegister: public Register {
27  public:
28 
29  /**********************************************************************/
30  /* CONSTRUCTION / DESTRUCTION */
31  /**********************************************************************/
32 
38  explicit V5CMDRegister(V5CRCRegister& crcReg);
39 
40 
41  /**********************************************************************/
42  /* REGISTER I/O */
43  /**********************************************************************/
44 
52  virtual void write(const boost::uint32_t* words, size_t wordCount);
53 
60  virtual void read(boost::uint32_t* words, size_t wordCount) const;
61 
62 
63  /**********************************************************************/
64  /* COMMAND CODE INTERFACE */
65  /**********************************************************************/
66 
73 
79 
83  void execute() const;
84 
85 
86  /**********************************************************************/
87  /* LINK TO OTHER REGISTERS */
88  /**********************************************************************/
89 
94  V5CRCRegister& crcRegister() const;
95 
96 
97  private:
98 
100  V5CMDRegister& operator=(const V5CMDRegister&);
101 
102  V5CommandCode::command_t m_command;
103  V5CRCRegister& m_crcReg;
104 
105  };
106 
107 }
108 
109 #endif