Placement class. More...
#include <placement.h>
Public Member Functions | |
| placement (netlist::netlist *netlist, library *lib) | |
| Constructor. More... | |
| geometry::multi_polygon < geometry::polygon < geometry::point< double > > > | cell_geometry (entity_system::entity cell) const |
| Cell geometry getter. More... | |
| void | cell_position (entity_system::entity cell, geometry::point< double > position) |
| Places a cell. More... | |
| geometry::point< double > | cell_position (entity_system::entity cell) const |
| Cell position getter. More... | |
| void | cell_fixed (entity_system::entity cell, bool fixed) |
| bool | cell_fixed (entity_system::entity cell) const |
| geometry::point< double > | cell_dimensions (entity_system::entity cell) const |
| entity_system::entity | cell_create (std::string name, std::string type) |
| const cells & | cell_properties () |
| geometry::point< double > | pin_position (entity_system::entity pin) const |
| Pin position getter. More... | |
| void | pad_position (entity_system::entity pad, geometry::point< double > position) |
| Places a pad. More... | |
| const netlist::netlist & | netlist () const |
| Netlist getter. More... | |
| const library & | lib () const |
| Placement library getter. More... | |
This class provides the basic placement interface, such as cells and pads position manipulation.
| ophidian::placement::placement::placement | ( | netlist::netlist * | netlist, |
| library * | lib | ||
| ) |
Placement constructor. Initializes the placement cell properties, such as positions and geometries.
| netlist | Circuit netlist. |
| lib | Placement library. |
|
inline |
Returns the geometry of a cell as a multi polygon. Each polygon in the multi polygon represents a rectangle of the cell.
| cell | Cell to get the geometry. |
| void ophidian::placement::placement::cell_position | ( | entity_system::entity | cell, |
| geometry::point< double > | position | ||
| ) |
Changes the position of a cell.
| cell | Cell to move. |
| position | Target position of the cell. |
|
inline |
Returns the position of a cell.
| cell | Cell to get the position. |
|
inline |
Returns the placement library used in the placement construction.
|
inline |
Returns the netlist used in the placement construction.
| void ophidian::placement::placement::pad_position | ( | entity_system::entity | pad, |
| geometry::point< double > | position | ||
| ) |
Changes the position of a pad.
| pad | Pad to move. |
| position | Target position of the pad. |
|
inline |
Returns the position of a pin, calculated from the cell position and the pin offset.
| pin | Pin to get the position. |
1.8.6