mirror of
https://github.com/The-OpenROAD-Project/OpenSTA.git
synced 2026-08-29 17:28:57 +02:00
Parasitics const
This commit is contained in:
@@ -494,7 +494,7 @@ ConcreteParasiticNode::addDevice(ConcreteParasiticDevice *device)
|
||||
|
||||
////////////////////////////////////////////////////////////////
|
||||
|
||||
ConcreteParasiticSubNode::ConcreteParasiticSubNode(Net *net,
|
||||
ConcreteParasiticSubNode::ConcreteParasiticSubNode(const Net *net,
|
||||
int id) :
|
||||
ConcreteParasiticNode(),
|
||||
net_(net),
|
||||
@@ -778,7 +778,7 @@ ConcreteParasiticNetwork::capacitance() const
|
||||
}
|
||||
|
||||
ConcreteParasiticNode *
|
||||
ConcreteParasiticNetwork::ensureParasiticNode(Net *net,
|
||||
ConcreteParasiticNetwork::ensureParasiticNode(const Net *net,
|
||||
int id)
|
||||
{
|
||||
NetId net_id(net, id);
|
||||
@@ -833,8 +833,8 @@ bool
|
||||
NetIdLess::operator()(const NetId *net_id1,
|
||||
const NetId *net_id2) const
|
||||
{
|
||||
Net *net1 = net_id1->first;
|
||||
Net *net2 = net_id2->first;
|
||||
const Net *net1 = net_id1->first;
|
||||
const Net *net2 = net_id2->first;
|
||||
int id1 = net_id1->second;
|
||||
int id2 = net_id2->second;
|
||||
return net1 < net2
|
||||
@@ -1347,7 +1347,7 @@ ConcreteParasitics::includesPinCaps(Parasitic *parasitic) const
|
||||
|
||||
ParasiticNode *
|
||||
ConcreteParasitics::ensureParasiticNode(Parasitic *parasitic,
|
||||
Net *net,
|
||||
const Net *net,
|
||||
int id)
|
||||
{
|
||||
ConcreteParasiticNetwork *cparasitic =
|
||||
|
||||
@@ -107,7 +107,8 @@ public:
|
||||
virtual void deleteParasiticNetwork(const Net *net,
|
||||
const ParasiticAnalysisPt *ap);
|
||||
virtual bool includesPinCaps(Parasitic *parasitic) const;
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic, Net *net,
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic,
|
||||
const Net *net,
|
||||
int id);
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic,
|
||||
const Pin *pin);
|
||||
|
||||
@@ -30,7 +30,7 @@ class ConcreteParasiticNode;
|
||||
typedef Map<const Pin*, float> ConcreteElmoreLoadMap;
|
||||
typedef ConcreteElmoreLoadMap::Iterator ConcretePiElmoreLoadIterator;
|
||||
typedef Map<const Pin*, ConcretePoleResidue*> ConcretePoleResidueMap;
|
||||
typedef std::pair<Net*, int> NetId;
|
||||
typedef std::pair<const Net*, int> NetId;
|
||||
struct NetIdLess
|
||||
{
|
||||
bool operator()(const NetId *net_id1,
|
||||
@@ -253,12 +253,12 @@ protected:
|
||||
class ConcreteParasiticSubNode : public ConcreteParasiticNode
|
||||
{
|
||||
public:
|
||||
ConcreteParasiticSubNode(Net *net,
|
||||
ConcreteParasiticSubNode(const Net *net,
|
||||
int id);
|
||||
virtual const char *name(const Network *network) const;
|
||||
|
||||
private:
|
||||
Net *net_;
|
||||
const Net *net_;
|
||||
int id_;
|
||||
};
|
||||
|
||||
@@ -420,14 +420,15 @@ public:
|
||||
virtual ~ConcreteParasiticNetwork();
|
||||
virtual bool isParasiticNetwork() const { return true; }
|
||||
bool includesPinCaps() const { return includes_pin_caps_; }
|
||||
ConcreteParasiticNode *ensureParasiticNode(Net *net,
|
||||
ConcreteParasiticNode *ensureParasiticNode(const Net *net,
|
||||
int id);
|
||||
ConcreteParasiticNode *findNode(const Pin *pin);
|
||||
ConcreteParasiticNode *ensureParasiticNode(const Pin *pin);
|
||||
virtual float capacitance() const;
|
||||
ConcreteParasiticPinNodeMap *pinNodes() { return &pin_nodes_; }
|
||||
ConcreteParasiticSubNodeMap *subNodes() { return &sub_nodes_; }
|
||||
void disconnectPin(const Pin *pin, Net *net);
|
||||
void disconnectPin(const Pin *pin,
|
||||
Net *net);
|
||||
virtual ParasiticDeviceIterator *deviceIterator();
|
||||
virtual ParasiticNodeIterator *nodeIterator();
|
||||
virtual void devices(// Return value.
|
||||
|
||||
@@ -248,7 +248,7 @@ NullParasitics::deleteParasiticNetwork(const Net *,
|
||||
|
||||
ParasiticNode *
|
||||
NullParasitics::ensureParasiticNode(Parasitic *,
|
||||
Net *,
|
||||
const Net *,
|
||||
int)
|
||||
{
|
||||
return nullptr;
|
||||
|
||||
@@ -99,7 +99,8 @@ public:
|
||||
virtual void deleteParasiticNetwork(const Net *net,
|
||||
const ParasiticAnalysisPt *ap);
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic,
|
||||
Net *net, int id);
|
||||
const Net *net,
|
||||
int id);
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic,
|
||||
const Pin *pin);
|
||||
virtual void incrCap(ParasiticNode *node, float cap,
|
||||
|
||||
@@ -161,7 +161,7 @@ public:
|
||||
// Parasitic network component builders.
|
||||
// Make a subnode of the parasitic network net.
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic,
|
||||
Net *net,
|
||||
const Net *net,
|
||||
int id) = 0;
|
||||
// Make a subnode of the parasitic network net connected to pin.
|
||||
virtual ParasiticNode *ensureParasiticNode(Parasitic *parasitic,
|
||||
|
||||
Reference in New Issue
Block a user