Interface FlowGraphFilter.Generic

    • Method Detail

      • newTraversal

        IFlowGraphFilterInstance newTraversal​(Set<NodeKey> startNodes,
                                              ITaskFlowAnalysisData data)
        Called at the beginning before a traversal operation on flow graph starts. Must create the filter method to use during the traversal operation. That filter may make use some state derived from the given params.

        In comparison with FlowGraphFilter.Forward and FlowGraphFilter.Backward, the traversal might traverse edges both in forward and backward direction. The returned filter instance should be independent of the traversal direction.

        Parameters:
        startNodes - A set of nodes in the flow graph where the traversal starts.
        data - Flow graph analysis result upon which the traversal operation is performed.
        Returns:
        The filter instance to use for the duration of a single traversal operation.
      • newForwardTraversal

        default IFlowGraphFilterInstance newForwardTraversal​(Set<NodeKey> startNodes,
                                                             ITaskFlowAnalysisData data)
        Description copied from interface: FlowGraphFilter.Forward
        Called at the beginning before a forward traversal operation on flow graph starts (e.g. when finding the successors of a node). Must create the filter method to use during the traversal operation. That filter may make use some state derived from the given params.

        A forward traversal is a traversal that only traverses edge in the direction they point to, i.e. a traversal that only accesses the successors of a node.

        Specified by:
        newForwardTraversal in interface FlowGraphFilter.Forward
        Parameters:
        startNodes - A set of nodes in the flow graph where the traversal starts.
        data - Flow graph analysis result upon which the traversal operation is performed.
        Returns:
        The filter instance to use for the duration of a single traversal operation.
      • newBackwardTraversal

        default IFlowGraphFilterInstance newBackwardTraversal​(Set<NodeKey> startNodes,
                                                              ITaskFlowAnalysisData data)
        Description copied from interface: FlowGraphFilter.Backward
        Called at the beginning before a forward traversal operation on flow graph starts (e.g. when finding the predecessors of a node). Must create the filter method to use during the traversal operation. That filter may make use some state derived from the given params.

        A backward traversal is a traversal that only traverses edge in the opposite direction they point to, i.e. a traversal that only accesses the predecessors of a node.

        Specified by:
        newBackwardTraversal in interface FlowGraphFilter.Backward
        Parameters:
        startNodes - A set of nodes in the flow graph where the traversal starts.
        data - Flow graph analysis result upon which the traversal operation is performed.
        Returns:
        The filter instance to use for the duration of a single traversal operation.