Enhancements to implementation

- OASIS layers are turned into pure layer name (not lxdy_name) for
  MAG output
- Boxes of instances had been incorrect
- consistent naming of cell files in presence of special chars
This commit is contained in:
Matthias Koefferlein
2019-11-30 22:30:28 +01:00
parent f8743e7411
commit 9eb09c3a5d
5 changed files with 30 additions and 6 deletions
+11
View File
@@ -294,6 +294,17 @@ SaveLayoutOptions::get_valid_layers (const db::Layout &layout, std::vector <std:
}
}
} else if (lm == LP_AssignNameWithPriority) {
for (std::vector<std::pair <unsigned int, db::LayerProperties> >::const_iterator l = all_layers.begin (); l != all_layers.end (); ++l) {
layers.push_back (*l);
if (l->second.name.empty ()) {
layers.back ().second = tl::sprintf ("L%dD%d", l->second.layer, l->second.datatype);
} else if (l->second.layer >= 0 && l->second.datatype >= 0) {
layers.back ().second = l->second.name;
}
}
} else if (lm == LP_AssignNumber) {
int next_layer = 0;
+4 -2
View File
@@ -391,7 +391,8 @@ public:
LP_OnlyNumbered = 0,
LP_OnlyNamed = 1,
LP_AssignName = 2,
LP_AssignNumber = 3
LP_AssignNameWithPriority = 3,
LP_AssignNumber = 4
};
/**
@@ -401,7 +402,8 @@ public:
* The lm mode specifies how to create layer properties for "halfway defined" layers -
* - LP_OnlyNamed will only select named ones
* - LP_OnlyNumbered will select only numbered ones
* - LP_AssignName will assign a name when no name is given
* - LP_AssignName will assign a name when no name is given plus encode layer/datatype when given
* - LP_AssignNameWithPriority will assign a name when no name is given and does not encore layer/datatype together with a name
* - LP_AssignNumber will assign numbers when no number is given
*/
void get_valid_layers (const db::Layout &layout, std::vector <std::pair <unsigned int, db::LayerProperties> > &valid_layers, LayerAssignmentMode lm) const;
+8
View File
@@ -160,6 +160,14 @@ public:
*/
void reserve (size_t n);
/**
* @brief Sets the base verbosity of the processor (see EdgeProcessor::set_base_verbosity for details)
*/
void set_base_verbosity (int bv)
{
m_processor.set_base_verbosity (bv);
}
/**
* @brief Enable progress
*