| 1418 | } |
| 1419 | |
| 1420 | cell_index_type |
| 1421 | Layout::add_cell (const db::Layout &other, db::cell_index_type ci) |
| 1422 | { |
| 1423 | cell_index_type ci_new = add_cell (other.cell_name (ci)); |
| 1424 | cell (ci_new).set_ghost_cell (other.cell (ci).is_ghost_cell ()); |
| 1425 | |
| 1426 | if (&other == this) { |
| 1427 | add_meta_info (ci_new, other.begin_meta (ci), other.end_meta (ci)); |
| 1428 | } else { |
| 1429 | for (auto m = other.begin_meta (ci); m != other.end_meta (ci); ++m) { |
| 1430 | add_meta_info (ci_new, meta_info_name_id (other.meta_info_name (m->first)), m->second); |
| 1431 | } |
| 1432 | } |
| 1433 | |
| 1434 | return ci_new; |
| 1435 | } |
| 1436 | |
| 1437 | cell_index_type |
| 1438 | Layout::add_cell (const char *name) |