16 :mPinName(pinName), mPinDirection(pinDirection), mPinType(pinType), mNetName(netName)
32 return qvPinDirection;
48 mPinName =
data[0].toString().toStdString();
49 mPinDirection =
data[1].toString();
50 mPinType =
data[2].toString();
51 mNetName =
data[3].toString();
59 mPinName =
data.toString().toStdString();
62 mPinDirection =
data.toString();
65 mPinType =
data.toString();
68 mNetName =
data.toString();
91 qRegisterMetaType<QList<int>>();
102 mPinGroupToTreeItem.clear();
109 mGateId =
g->get_id();
113 for (
auto pin : gateType->
get_pins())
117 const std::string& grouping = pin->get_group().first->get_name();
128 if (
g->get_fan_in_net(pin))
131 netIDs.
append(
g->get_fan_in_net(pin)->get_id());
136 if (
g->get_fan_out_net(pin))
139 netIDs.
append(
g->get_fan_out_net(pin)->get_id());
144 if (
g->get_fan_in_net(pin))
147 netIDs.
append(
g->get_fan_in_net(pin)->get_id());
149 if (
g->get_fan_out_net(pin))
154 netIDs.
append(
g->get_fan_out_net(pin)->get_id());
164 if (!grouping.empty())
170 pingroupItem =
new PinTreeItem(grouping, pinDirection, pinType,
"");
173 mPinGroupToTreeItem.insert(grouping, pingroupItem);
194 return g->get_type()->get_pins().size();
virtual void appendChild(BaseTreeItem *child)
The BaseTreeModel implements generic standard functions of a tree model.
void setHeaderLabels(const QStringList &label)
GatePinsTreeModel(QObject *parent=nullptr)
int getNumberOfDisplayedPins()
std::vector< GatePin * > get_pins(const std::function< bool(GatePin *)> &filter=nullptr) const
Gate * get_gate_by_id(const u32 gate_id) const
void setNetIds(const QList< u32 > &nids)
QVariant getData(int column) const override
int getColumnCount() const override
void setDataAtIndex(int index, QVariant &data) override
void appendData(QVariant data) override
void setData(QList< QVariant > data) override
std::string enum_to_string(T e)
void append(const T &value)
QString fromStdString(const std::string &str)
bool isEmpty() const const