21 #ifndef SRC_NETLIST_CELLS_H_
22 #define SRC_NETLIST_CELLS_H_
25 #include "../entity_system/entity_system.h"
26 #include "../entity_system/vector_property.h"
27 #include "../standard_cell/standard_cells.h"
42 std::string name(entity_system::entity cell)
const {
43 return m_names[m_system.
lookup(cell)];
45 entity_system::entity standard_cell(entity_system::entity cell)
const {
46 return m_standard_cells[m_system.
lookup(cell)];
48 const std::vector<entity_system::entity> &
pins(entity_system::entity cell)
const {
49 return m_pins[m_system.
lookup(cell)];
52 std::pair< std::vector<std::string>::const_iterator, std::vector<std::string>::const_iterator > names()
const {
53 return std::make_pair(m_names.begin(), m_names.end());
56 std::pair< std::vector<entity_system::entity>::const_iterator, std::vector<entity_system::entity>::const_iterator > standard_cells()
const {
57 return std::make_pair(m_standard_cells.
begin(), m_standard_cells.
end());
60 std::pair< std::vector<std::vector<entity_system::entity>>::const_iterator, std::vector<std::vector<entity_system::entity>>::const_iterator >
pins()
const {
61 return std::make_pair(m_pins.begin(), m_pins.end());
64 void insert_pin(entity_system::entity cell, entity_system::entity pin);
65 void pins(entity_system::entity cell, std::vector<entity_system::entity>
pins);
66 void name(entity_system::entity cell, std::string name);
67 void standard_cell(entity_system::entity cell, entity_system::entity std_cell);
70 void pins_preallocate(entity_system::entity cell, std::size_t pin_count);
std::vector< T >::const_iterator begin() const
Begin iterator.
Definition: vector_property.h:137
std::vector< T >::const_iterator end() const
End iterator.
Definition: vector_property.h:146
entity_system class.
Definition: entity_system.h:40
entity_index lookup(entity e) const
Gets the index of an entity.
Definition: entity_system.h:149