Bitstream Interpretation Library (BIL)  0.1
V5FDRIRegister.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 #ifndef BIL_V5FDRIREGISTER_HPP
8 #define BIL_V5FDRIREGISTER_HPP
9 
13 
14 
15 namespace bil {
16 
17  class V5CMDRegister;
18  class V5FARRegister;
19 
20 
30  class V5FDRIRegister: public Register {
31  public:
32 
33  /**********************************************************************/
34  /* CONSTRUCTION / DESTRUCTION */
35  /**********************************************************************/
36 
46  V5FDRIRegister(const V5CMDRegister& cmdReg, V5FARRegister& farReg);
47 
48 
49  /**********************************************************************/
50  /* REGISTER I/O */
51  /**********************************************************************/
52 
62  virtual void write(const boost::uint32_t* words, size_t wordCount);
63 
64 
65  /**********************************************************************/
66  /* MULTI-FRAME-WRITE INTERFACE */
67  /**********************************************************************/
68 
76  void writePreviousFrame();
77 
78 
79  /**********************************************************************/
80  /* LINK TO OTHER REGISTERS */
81  /**********************************************************************/
82 
87  const V5CMDRegister& cmdRegister() const;
88 
93  V5FARRegister& farRegister() const;
94 
95 
96  /**********************************************************************/
97  /* CONFIGURATION INTERFACE */
98  /**********************************************************************/
99 
105 
110  const V5Configuration& configuration() const;
111 
112 
113  private:
114 
116  V5FDRIRegister& operator=(const V5FDRIRegister&);
117 
118  V5Configuration m_configuration;
119  const V5CMDRegister& m_cmdReg;
120  V5FARRegister& m_farReg;
121  V5CfgFrame m_previousFrame;
122 
123  };
124 
125 }
126 
127 #endif