Bitstream Interpretation Library (BIL)  0.1
CfgDecoder.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 #ifndef BIL_CFGDECODER_HPP
8 #define BIL_CFGDECODER_HPP
9 
12 #include <xdl/model/PIPRef.hpp>
13 #include <xdlrc/model/Device.hpp>
14 
15 
16 namespace bil {
17 
25  class CfgDecoder {
26  public:
27 
28  /**********************************************************************/
29  /* DECODING */
30  /**********************************************************************/
31 
39  void decode(CfgExtractor& extractor, const DeviceCfgDb& db, const Device& device);
40 
41 
42  /**********************************************************************/
43  /* DECODING RESULT LISTS */
44  /**********************************************************************/
45 
50  const PIPRefs& pipRefs() const;
51 
56  private:
57 
58  void decodeTileType(CfgExtractor& extractor, const TileTypeCfgDb& tileTypeDb, const Tiles& tiles);
59  void decodeTilePIPs(const PIPControlSets& pipControlSets, size_t tileIndex);
60 
61  PIPRefs m_pipRefs;
62  std::vector<boost::uint32_t> m_buffer;
63 
64  };
65 
66 }
67 
68 #endif