Xplace_for_ICCAD/cpp_to_py/common/db/DesignRule.cpp

31 lines
696 B
C++
Raw Normal View History

2022-10-20 22:46:17 +08:00
#include "Database.h"
using namespace db;
/***** EdgeTypes *****/
int EdgeTypes::getEdgeType(const string& name) const {
unsigned numTypes = types.size();
for (unsigned i = 0; i != numTypes; ++i) {
if (types[i] == name) {
return i;
}
}
return -1;
}
int EdgeTypes::getEdgeSpace(const int edge1, const int edge2) const {
if (!distTable.size()) {
return 0;
}
#ifdef DEBUG
if (edge1 < 0 || edge1 >= (int)types.size()) {
2023-04-06 13:34:26 +08:00
logger.error("invalid edge ID: %d", edge1);
2022-10-20 22:46:17 +08:00
}
if (edge2 < 0 || edge2 >= (int)types.size()) {
2023-04-06 13:34:26 +08:00
logger.error("invalid edge ID: %d", edge2);
2022-10-20 22:46:17 +08:00
}
#endif
return distTable[edge1][edge2];
}