Bitstream Interpretation Library (BIL)  0.1
V5BitstreamSyntaxChecker.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 #ifndef BIL_V5BITSTREAMSYNTAXCHECKER_HPP
8 #define BIL_V5BITSTREAMSYNTAXCHECKER_HPP
9 
11 
12 
13 namespace bil {
14 
25  public:
26 
27  /**********************************************************************/
28  /* CONSTRUCTION / DESTRUCTION */
29  /**********************************************************************/
30 
32 
33 
34  /**********************************************************************/
35  /* SYNTAX CHECK STATE */
36  /**********************************************************************/
37 
42  bool behindSyncWord() const;
43 
48  bool lastPacketWasType1() const;
49 
55 
59  virtual void reset();
60 
61 
62  /**********************************************************************/
63  /* VISITING METHODS */
64  /**********************************************************************/
65 
71  virtual void visit(const BuswidthPattern& buswidthPattern);
72 
78  virtual void visit(const DummyWord& dummyWord);
79 
85  virtual void visit(const SyncWord& syncWord);
86 
92  virtual void visit(const Type1Packet& type1Packet);
93 
99  virtual void visit(const Type2Packet& type2Packet);
100 
101 
102  private:
103 
104  bool m_behindSyncWord;
105  bool m_lastPacketWasType1;
106  RegisterAddress::address_t m_lastType1Address;
107 
108  };
109 
110 }
111 
112 #endif