21 #ifndef SRC_STANDARD_CELL_PINS_H_
22 #define SRC_STANDARD_CELL_PINS_H_
24 #include "../entity_system/entity_system.h"
25 #include "../entity_system/vector_property.h"
28 namespace standard_cell {
31 enum class pin_directions {
32 NOT_ASSIGNED, INPUT, OUTPUT
47 void name(entity_system::entity pin, std::string name);
48 std::string name(entity_system::entity pin)
const {
49 return m_names[m_system.
lookup(pin)];
51 void owner(entity_system::entity pin, entity_system::entity cell);
52 entity_system::entity owner(entity_system::entity pin)
const {
53 return m_owners[m_system.
lookup(pin)];
56 void direction(entity_system::entity pin, pin_directions dir);
57 pin_directions direction(entity_system::entity pin)
const {
58 return m_directions[m_system.
lookup(pin)];
62 void clock_input(entity_system::entity pin,
bool clock);
63 bool clock_input(entity_system::entity pin)
const {
64 return m_clock_input[m_system.
lookup(pin)];
entity_system class.
Definition: entity_system.h:40
Definition: vector_property.h:160
entity_index lookup(entity e) const
Gets the index of an entity.
Definition: entity_system.h:149