7 #ifndef BIL_XDLRCPARSERIMP_HPP
8 #define BIL_XDLRCPARSERIMP_HPP
16 namespace bil {
namespace xdlrcparser_detail {
23 typedef std::map<std::string, size_t>
pinMap_t;
51 void resetTempPointers();
56 void parse1stPrimitiveSite();
59 void parse1stPrimitiveDefs();
60 void parse1stPrimitiveDef();
62 void parse1stElement();
66 void parse2ndPrimitiveSite();
67 void parse2ndPrimitiveSiteSkip();
71 void parseTileSummary();
74 void addTile(
const char* tileName);
75 void addTileType(
const char* typeName);
76 void addWire(
const char* wireName);
78 void addPIP(
const PIP& pip);
79 void addPrimitiveType(
const char* typeName);
80 void addPin(
const char* pinName);
82 size_t findTile(
const char* tileName);
83 size_t findWire(
const char* wireName,
wireMap_t& wireMap);
84 size_t findPrimitiveType(
const char* typeName);
85 size_t findPin(
const char* pinName);
88 bool m_secondPassEnabled;
110 std::vector<TileTypeEx> m_tileTypesEx;
112 std::vector<pinMap_t> m_pinMaps;
120 size_t m_primitiveSiteIndex;