File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change @@ -2948,6 +2948,38 @@ Descriptor::Properties DbTechLayerDescriptor::getDBProperties(
29482948 props.push_back ({std::move (title), widths});
29492949 }
29502950
2951+ if (layer->hasTwoWidthsSpacingRules ()) {
2952+ const int widths = layer->getTwoWidthsSpacingTableNumWidths ();
2953+
2954+ PropertyList spacing_rules;
2955+ for (int i = 0 ; i < widths; i++) {
2956+ const std::string prefix_title = Property::convert_dbu (
2957+ layer->getTwoWidthsSpacingTableWidth (i), true );
2958+ const std::string prl_title
2959+ = layer->getTwoWidthsSpacingTableHasPRL (i)
2960+ ? " - PRL "
2961+ + Property::convert_dbu (
2962+ layer->getTwoWidthsSpacingTablePRL (i), true )
2963+ : " " ;
2964+
2965+ for (int j = 0 ; j < widths; j++) {
2966+ std::string title = prefix_title;
2967+ title += " - " ;
2968+ title += Property::convert_dbu (layer->getTwoWidthsSpacingTableWidth (j),
2969+ true );
2970+ title += prl_title;
2971+ spacing_rules.emplace_back (
2972+ title,
2973+ Property::convert_dbu (layer->getTwoWidthsSpacingTableEntry (i, j),
2974+ true ));
2975+ }
2976+ }
2977+
2978+ if (!spacing_rules.empty ()) {
2979+ props.push_back ({" Two width spacing rules" , spacing_rules});
2980+ }
2981+ }
2982+
29512983 PropertyList cutclasses;
29522984 for (auto * cutclass : layer->getTechLayerCutClassRules ()) {
29532985 std::string text
You can’t perform that action at this time.
0 commit comments