cz::muni::stanse::threadchecker::graph::CFGGraphState Class Reference

Collaboration diagram for cz::muni::stanse::threadchecker::graph::CFGGraphState:
[legend]

List of all members.

Public Member Functions

 CFGGraphState (CFGHandle cfg)
CFGHandle getCfg ()
Set< CFGNodegetReachableNodes ()
Set< CFGNodegetVisitedNodes ()
CFGNode getIdToNode (Integer id)
List< CFGNodewaitingFor (final CFGNode actualNode)
Set< CFGNodedetectCycles (final CFGNode actualNode, List< CFGNode > waitList)


Detailed Description

Class represents Control Flow Graph during traversing analysis. Instance holds reachable nodes in graph and also provide info about wrong builded cycles to prevend deadlock during CFGTraverse analysis.
Author:
Jan Kučera

Constructor & Destructor Documentation

cz::muni::stanse::threadchecker::graph::CFGGraphState::CFGGraphState ( CFGHandle  cfg  )  [inline]


Member Function Documentation

CFGHandle cz::muni::stanse::threadchecker::graph::CFGGraphState::getCfg (  )  [inline]

Set<CFGNode> cz::muni::stanse::threadchecker::graph::CFGGraphState::getReachableNodes (  )  [inline]

Set<CFGNode> cz::muni::stanse::threadchecker::graph::CFGGraphState::getVisitedNodes (  )  [inline]

CFGNode cz::muni::stanse::threadchecker::graph::CFGGraphState::getIdToNode ( Integer  id  )  [inline]

List<CFGNode> cz::muni::stanse::threadchecker::graph::CFGGraphState::waitingFor ( final CFGNode  actualNode  )  [inline]

Method returns CFGNodes which are predecessors of actualNode and aren't marked as visited.

Parameters:
actualNode 
Returns:
List of CFGNodes which aren't marked as visited

Set<CFGNode> cz::muni::stanse::threadchecker::graph::CFGGraphState::detectCycles ( final CFGNode  actualNode,
List< CFGNode waitList 
) [inline]

Method determines, whether actualNode and any node from waitList are in cycle. If so, method returns Set of nodes which are first succesors of actualNode in founded cycle.

Parameters:
actualNode CFGNode
waitList List<CFGNode> list of predecessors of actualNode
Returns:
Set<CFGNode> contains nodes where cycle starts


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

Generated on Thu Jan 13 16:24:10 2011 for Stanse by  doxygen 1.5.6