HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UN_PortUtils Namespace Reference

Classes

class  PortIterator
 

Typedefs

using WireIterator = UN_WireIDList::const_iterator
 
using WireRange = UT_IteratorRange< WireIterator >
 
using SrcPortIterator = PortIterator< true >
 A range for traversing the source ports of the given port. More...
 
using SrcPortRange = UT_IteratorRange< SrcPortIterator >
 
using DstPortIterator = PortIterator< false >
 A range for traversing the destination ports of the given port. More...
 
using DstPortRange = UT_IteratorRange< DstPortIterator >
 

Functions

UN_API bool isConnectedToSrc (const UN_GraphData *dst_graph_data, UN_PortID dst_port_id, const UN_ConstPort &src_port)
 
UN_API bool isConnectedToDst (const UN_GraphData *src_graph_data, UN_PortID src_port_id, const UN_ConstPort &dst_port)
 
UN_API bool isConnected (const UN_GraphData *graph_data, UN_PortID port_id, const UN_ConstPort &src_or_dst_port)
 
UN_API UN_WireID connectPorts (UN_GraphData *graph_data, UN_PortID src_port_id, UN_PortID dst_port_id)
 
UN_API WireRange srcWireRange (const UN_GraphData *graph_data, UN_PortID dst_port_id)
 
UN_API WireRange dstWireRange (const UN_GraphData *graph_data, UN_PortID src_port_id)
 
UN_API SrcPortRange srcPortRange (const UN_GraphData *graph_data, UN_PortID dst_port_id)
 
UN_API DstPortRange dstPortRange (const UN_GraphData *graph_data, UN_PortID src_port_id)
 
UN_API UN_PortIDList srcPorts (const UN_GraphData *graph_data, UN_PortID dst_port_id)
 
UN_API UN_PortIDList dstPorts (const UN_GraphData *graph_data, UN_PortID src_port_id)
 
UN_API UN_WireID srcWire (const UN_GraphData *graph_data, UN_PortID dst_port_id)
 
UN_API UN_PortID srcPort (const UN_GraphData *graph_data, UN_PortID dst_port_id)
 
UN_API UN_WireID dstWire (const UN_GraphData *graph_data, UN_PortID src_port_id)
 
UN_API UN_PortID dstPort (const UN_GraphData *graph_data, UN_PortID src_port_id)
 

Typedef Documentation

using UN_PortUtils::DstPortIterator = typedef PortIterator< false >

A range for traversing the destination ports of the given port.

Definition at line 352 of file UN_PortUtils.h.

Definition at line 353 of file UN_PortUtils.h.

A range for traversing the source ports of the given port.

Definition at line 340 of file UN_PortUtils.h.

Definition at line 341 of file UN_PortUtils.h.

using UN_PortUtils::WireIterator = typedef UN_WireIDList::const_iterator

Definition at line 182 of file UN_PortUtils.h.

Definition at line 183 of file UN_PortUtils.h.

Function Documentation

UN_API UN_WireID UN_PortUtils::connectPorts ( UN_GraphData graph_data,
UN_PortID  src_port_id,
UN_PortID  dst_port_id 
)

Connects the source port to the destination port and returns the resulting wire that represents that connection.

UN_API UN_PortID UN_PortUtils::dstPort ( const UN_GraphData graph_data,
UN_PortID  src_port_id 
)

Returns the ID of the first destination wire/port connected to the given source port. Or returns an invalid ID if no destination port is connected to it. This is a convenience method for some graphs, where ports can have at most one destination.

UN_API DstPortRange UN_PortUtils::dstPortRange ( const UN_GraphData graph_data,
UN_PortID  src_port_id 
)

Returns a range for traversing the destination ports of the given port. Ie, ports to which this port provides (sends) data. NOTE, the iterators hold a reference to the underlying wire array, and therefore ports can't be added/removed during the iteration. For adding/removing ports, use dstPorts() function.

UN_API UN_PortIDList UN_PortUtils::dstPorts ( const UN_GraphData graph_data,
UN_PortID  src_port_id 
)

Returns the IDs of the ports connected as destinations to the given port. Ie, ports to which this port provides (sends) data.

UN_API UN_WireID UN_PortUtils::dstWire ( const UN_GraphData graph_data,
UN_PortID  src_port_id 
)

Returns the ID of the first destination wire/port connected to the given source port. Or returns an invalid ID if no destination port is connected to it. This is a convenience method for some graphs, where ports can have at most one destination.

UN_API WireRange UN_PortUtils::dstWireRange ( const UN_GraphData graph_data,
UN_PortID  src_port_id 
)

Returns a range for traversing the destination wires of the given port. Ie, wires to which this port provides (sends) data. NOTE, the iterators hold a reference to the underlying wire array, and therefore wires can't be added/removed during the iteration. For adding/removing wires, use dstWires() function and make a copy.

UN_API bool UN_PortUtils::isConnected ( const UN_GraphData graph_data,
UN_PortID  port_id,
const UN_ConstPort src_or_dst_port 
)

Returns true if the given port is connected to the given other port either as a source or a destination.

UN_API bool UN_PortUtils::isConnectedToDst ( const UN_GraphData src_graph_data,
UN_PortID  src_port_id,
const UN_ConstPort dst_port 
)

Returns true if the given source port is connected to the given destination port.

UN_API bool UN_PortUtils::isConnectedToSrc ( const UN_GraphData dst_graph_data,
UN_PortID  dst_port_id,
const UN_ConstPort src_port 
)

Returns true if the given destination port is connected to the given source port.

UN_API UN_PortID UN_PortUtils::srcPort ( const UN_GraphData graph_data,
UN_PortID  dst_port_id 
)

Returns the ID of the first source wire/port connected to the given destination port. Or returns an invalid ID if no source port is connected to it. This is a convenience method for very common graphs, where ports can have at most one source.

UN_API SrcPortRange UN_PortUtils::srcPortRange ( const UN_GraphData graph_data,
UN_PortID  dst_port_id 
)

Returns a range for traversing the source ports of the given port. Ie, ports from which this port takes (receives) data. NOTE, the iterators hold a reference to the underlying wire array, and therefore ports can't be added/removed during the iteration. For adding/removing ports, use srcPorts() function.

UN_API UN_PortIDList UN_PortUtils::srcPorts ( const UN_GraphData graph_data,
UN_PortID  dst_port_id 
)

Returns the IDs of the ports connected as sources to the given port. Ie, ports from which this port takes (receives) data.

UN_API UN_WireID UN_PortUtils::srcWire ( const UN_GraphData graph_data,
UN_PortID  dst_port_id 
)

Returns the ID of the first source wire/port connected to the given destination port. Or returns an invalid ID if no source port is connected to it. This is a convenience method for very common graphs, where ports can have at most one source.

UN_API WireRange UN_PortUtils::srcWireRange ( const UN_GraphData graph_data,
UN_PortID  dst_port_id 
)

Returns a range for traversing the source wires of the given port. Ie, wires from which this port takes (receives) data. NOTE, the iterators hold a reference to the underlying wire array, and therefore wires can't be added/removed during the iteration. For adding/removing wires, use srcWires() function and make a copy.