Bitstream Interpretation Library (BIL)  0.1
PinRef.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 #ifndef BIL_PINREF_HPP
8 #define BIL_PINREF_HPP
9 
10 #include <cstring>
11 #include <vector>
12 
13 
14 namespace bil {
15 
24  class PinRef {
25  public:
26 
27  /**********************************************************************/
28  /* CONSTRUCTION / DESTRUCTION */
29  /**********************************************************************/
30 
34  PinRef();
35 
36 
37  /**********************************************************************/
38  /* INSTANCE INDEX */
39  /**********************************************************************/
40 
45  void instanceIndex(size_t index);
46 
51  size_t instanceIndex() const;
52 
53 
54  /**********************************************************************/
55  /* PIN INDEX */
56  /**********************************************************************/
57 
62  void pinIndex(size_t index);
63 
68  size_t pinIndex() const;
69 
70 
71  /**********************************************************************/
72  /* MODIFICATORS */
73  /**********************************************************************/
74 
78  void clear();
79 
80 
81  private:
82 
83  size_t m_instanceIndex;
84  size_t m_pinIndex;
85 
86  };
87 
88 
90  typedef std::vector<PinRef> PinRefs;
91 
92 }
93 
94 #endif