19 #ifndef TORC_PHYSICAL_NET_HPP
20 #define TORC_PHYSICAL_NET_HPP
96 mSources.push_back(inInstancePinPtr);
98 inInstancePinPtr->addToInstance();
106 mSinks.push_back(inInstancePinPtr);
108 inInstancePinPtr->addToInstance();
119 if(result == e)
return false;
120 inInstancePinPtr->removeFromInstance();
132 if(result == e)
return false;
133 inInstancePinPtr->removeFromInstance();
142 mPips.push_back(inPip);
154 if(result == e)
return false;
240 #endif // TORC_PHYSICAL_NET_HPP
InstancePinSharedPtrConstIterator sinksBegin(void) const
Returns the begin constant iterator for sink instance pins.
bool isRouted(void) const
Returns true if the net has any pips.
ENetType
Enumeration of net power types.
Header for the Renamable class.
InstancePinSharedPtrIterator sinksBegin(void)
Returns the begin non-constant iterator for sink instance pins.
bool hasAnyPips(void) const
Returns true if the net has any pips.
size_t getPipCount(void) const
Returns the number of pips on the net.
Header for the ConfigMap class.
InstancePinSharedPtrConstIterator sourcesEnd(void) const
Returns the end constant iterator for source instance pins.
void setParentWeakPtr(WeakPtrType inParentPtr)
Sets the weak pointer to the parent.
ENetType getNetType(void) const
Returns the net power type. See ENetPowerType.
InstancePinSharedPtrConstIterator sinksEnd(void) const
Returns the end constant iterator for sink instance pins.
PipIterator pipsEnd(void)
Returns the end non-constant iterator for pips.
bool removeSource(InstancePinSharedPtr &inInstancePinPtr)
Removes the given instance pin from the sources of this net.
bool hasMultipleSources(void) const
Returns true if the net has more than one source.
Net(const string &inName, ENetType inNetType)
Protected constructor.
PipVector::const_iterator PipConstIterator
Constant iterator to Pip objects.
string mName
The name of the object.
void setNetType(ENetType inNetType)
Sets the net power type. See ENetPowerType.
InstancePinSharedPtrVector::iterator InstancePinSharedPtrIterator
Non-constant iterator to InstancePin shared pointer objects.
bool removePip(const Pip &inPip)
Removes the given pip from this net.
void addSink(InstancePinSharedPtr &inInstancePinPtr)
Adds the given instance pin as a sink for this net.
std::vector< InstancePinSharedPtr > InstancePinSharedPtrVector
Vector of InstancePin shared pointers.
Header for the Routethrough class.
size_t getSinkCount(void) const
Returns the number of sinks on the net.
InstancePinSharedPtrVector mSources
Vector of instance pin shared pointer sources for the net.
boost::shared_ptr< class InstancePin > InstancePinSharedPtr
Shared pointer encapsulation of an InstancePin.
bool hasOneSink(void) const
Returns true if the net has exactly one sink.
InstancePinSharedPtrVector mSinks
Vector of instance pin shared pointer sinks for the net.
InstancePinSharedPtrConstIterator sourcesBegin(void) const
Returns the begin constant iterator for source instance pins.
PipIterator pipsBegin(void)
Returns the begin non-constant iterator for pips.
InstancePinSharedPtrIterator sourcesEnd(void)
Returns the end non-constant iterator for source instance pins.
ENetType mNetType
The net power type. See ENetType.
Header for the Progenitor class.
Header for the Annotated class.
InstancePinSharedPtrIterator sourcesBegin(void)
Returns the begin non-constant iterator for source instance pins.
bool hasAnySinks(void) const
Returns true if the net has any sinks.
bool isUnrouted(void) const
Returns true if the net has no pips.
bool containsSink(InstancePinSharedPtr &inInstancePinPtr) const
Determines whether the given instance pin is a sink of this net.
void addPip(const Pip &inPip)
Adds the given pip to this net.
Header for the Named class.
PipConstIterator pipsBegin(void) const
Returns the begin constant iterator for pips.
size_t getSourceCount(void) const
Returns the number of sources on the net.
PipVector mPips
Vector of pips for the net.
std::vector< NetSharedPtr > NetSharedPtrVector
Vector of Net shared pointers.
boost::shared_ptr< Net > NetSharedPtr
Shared pointer encapsulation of a Net.
boost::weak_ptr< Net > NetWeakPtr
Weak pointer encapsulation of a Net.
bool containsSource(InstancePinSharedPtr &inInstancePinPtr) const
Determines whether the given instance pin is a source of this net.
Factory class for physical netlist elements.
Concept for any object that may have children.
InstancePinSharedPtrVector::const_iterator InstancePinSharedPtrConstIterator
Constant iterator to InstancePin shared pointer objects.
Concept for any object that may have a parent.
Header for the Progeny class.
Concept for any object that can be renamed.
Physical design programmable interconnect point.
std::string string
Imported type name.
Configuration setting map.
void unroute(void)
Unroute the net.
InstancePinSharedPtrIterator sinksEnd(void)
Returns the end non-constant iterator for sink instance pins.
PipConstIterator pipsEnd(void) const
Returns the end constant iterator for pips.
bool containsPip(const Pip &inPip) const
Determines whether the net contains the given pip.
bool hasMultipleSinks(void) const
Returns true if the next has more than one sink.
Header for the Pip class.
void addSource(InstancePinSharedPtr &inInstancePinPtr)
Adds the given instance pin as a source for this net.
Circuit composed of instances and nets.
WeakPtrType mSelfWeakPtr
Weak pointer this object.
bool removeSink(InstancePinSharedPtr &inInstancePinPtr)
Removes the given instance pin from the sinks of this net.
bool operator==(const Net &rhs) const
Equality operator.
Header for the InstancePin class.
bool hasAnySources(void) const
Returns true if the net has any sources.
Concept for any object that can be annotated.
PipVector::iterator PipIterator
Non-constant iterator to Pip objects.
bool hasOneSource(void) const
Returns true if the net has exactly one source.
std::vector< Pip > PipVector
Vector of pips.