16 :mPinName(pinName), mPinDirection(pinDirection), mPinType(pinType), mNetName(netName), mIndex(inx)
36 return (mIndex ?
"descending" :
"ascending");
44 Q_ASSERT(
data.size() >= 5);
45 mPinName =
data[0].toString().toStdString();
46 mPinDirection =
data[1].toString();
47 mPinType =
data[2].toString();
48 mNetName =
data[3].toString();
49 mIndex =
data[4].toInt();
57 mPinName =
data.toString().toStdString();
60 mPinDirection =
data.toString();
63 mPinType =
data.toString();
66 mNetName =
data.toString();
69 mIndex =
data.toInt();
93 qRegisterMetaType<QList<int>>();
104 mPinGroupToTreeItem.clear();
111 mGateId =
g->get_id();
115 for (
auto pin : gateType->
get_pins())
120 const std::string& grpName = pg->
get_name();
122 int inx = pin->get_group().second;
133 if (
g->get_fan_in_net(pin))
136 netIDs.
append(
g->get_fan_in_net(pin)->get_id());
141 if (
g->get_fan_out_net(pin))
144 netIDs.
append(
g->get_fan_out_net(pin)->get_id());
149 if (
g->get_fan_in_net(pin))
152 netIDs.
append(
g->get_fan_in_net(pin)->get_id());
154 if (
g->get_fan_out_net(pin))
159 netIDs.
append(
g->get_fan_out_net(pin)->get_id());
169 if (!grpName.empty())
175 pingroupItem =
new PinTreeItem(grpName, pinDirection, pinType,
"", iDescending);
178 mPinGroupToTreeItem.insert(grpName, pingroupItem);
199 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
const std::string & get_name() const
bool is_ascending() 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