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