ROSE 2.1.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection > Class Template Referenceabstract

Description

template<class NodeIterator, class EdgeIterator, class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
class Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >

Definition at line 61 of file FlowGraphInterface.h.

Inheritance diagram for Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >:
Inheritance graph
[legend]

Public Types

using NodeCollectionType = NodeCollection
 
using EdgeCollectionType = EdgeCollection
 
using NodePredicate = std::function< bool(NodeIterator)>
 
using EdgePredicate = std::function< bool(EdgeIterator)>
 

Public Member Functions

virtual NodeCollection getNodes (NodePredicate=noFilter< NodeIterator >()) const =0
 
virtual EdgeCollection getEdges (EdgePredicate=noFilter< EdgeIterator >()) const =0
 
virtual NodeIterator edgeSource (const EdgeIterator &p) const =0
 
virtual NodeIterator edgeTarget (const EdgeIterator &p) const =0
 
virtual EdgeCollection getEdgesFrom (const NodeIterator &, EdgePredicate=noFilter< EdgeIterator >()) const
 
virtual EdgeCollection getEdgesTo (const NodeIterator &, EdgePredicate=noFilter< EdgeIterator >()) const
 
virtual enum MutationSupportOption allowMutationDuringTraversal () const
 
virtual TraversalSupportOption getTraversalSupport () const
 

Member Typedef Documentation

◆ NodeCollectionType

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
using Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::NodeCollectionType = NodeCollection

Definition at line 63 of file FlowGraphInterface.h.

◆ EdgeCollectionType

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
using Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::EdgeCollectionType = EdgeCollection

Definition at line 64 of file FlowGraphInterface.h.

◆ NodePredicate

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
using Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::NodePredicate = std::function<bool(NodeIterator)>

Definition at line 66 of file FlowGraphInterface.h.

◆ EdgePredicate

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
using Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::EdgePredicate = std::function<bool(EdgeIterator)>

Definition at line 67 of file FlowGraphInterface.h.

Member Function Documentation

◆ getEdgesFrom()

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
virtual EdgeCollection Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::getEdgesFrom ( const NodeIterator &  ,
EdgePredicate  = noFilter<EdgeIterator>() 
) const
inlinevirtual

Definition at line 83 of file FlowGraphInterface.h.

◆ getEdgesTo()

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
virtual EdgeCollection Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::getEdgesTo ( const NodeIterator &  ,
EdgePredicate  = noFilter<EdgeIterator>() 
) const
inlinevirtual

Definition at line 84 of file FlowGraphInterface.h.

◆ allowMutationDuringTraversal()

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
virtual enum MutationSupportOption Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::allowMutationDuringTraversal ( ) const
inlinevirtual

Definition at line 86 of file FlowGraphInterface.h.

◆ getTraversalSupport()

template<class NodeIterator , class EdgeIterator , class NodeCollection = boost::iterator_range<NodeIterator>, class EdgeCollection = boost::iterator_range<EdgeIterator>>
virtual TraversalSupportOption Rose::FlowGraphInterface::FlowGraphAccessInterface< NodeIterator, EdgeIterator, NodeCollection, EdgeCollection >::getTraversalSupport ( ) const
inlinevirtual

Definition at line 87 of file FlowGraphInterface.h.


The documentation for this class was generated from the following file: