| 
    ROSE
    0.11.96.11
    
   | 
 
Definition at line 82 of file graphProcessing.h.

Public Types | |
| typedef boost::graph_traits< CFG >::vertex_descriptor | Vertex | 
| typedef boost::graph_traits< CFG >::edge_descriptor | Edge | 
| typedef StackFrameVector< SynthesizedAttributeType > | SynthesizedAttributesList | 
Public Member Functions | |
| void | constructPathAnalyzer (CFG *g, bool unbounded=false, Vertex end=0, Vertex begin=0, bool ns=true) | 
| This is the function that is used by the user directly to start the algorithm.  More... | |
| virtual void | analyzePath (std::vector< Vertex > &pth)=0 | 
| std::vector< int > | getInEdges (int &node, CFG *&g) | 
| Gets out edges with integer inputs, internal use only SgGraphTraversal::getInEdges Input:  More... | |
| std::vector< int > | getOutEdges (int &node, CFG *&g) | 
| Gets out edges with integer inputs, internal use only SgGraphTraversal::getOutEdges Input:  More... | |
| int | getTarget (int &n, CFG *&g) | 
| Gets the target of an edge SgGraphTraversal::getTarget Input:  More... | |
| int | getSource (int &n, CFG *&g) | 
| Gets the source of an edge SgGraphTraversal::getSource Input:  More... | |
| SgGraphTraversal (SgGraphTraversal &) | |
| SgGraphTraversal & | operator= (SgGraphTraversal &) | 
| void | firstPrepGraph (CFG *&g) | 
| DEPRECATED This is the function that preps the graph for traversal, currently this one isn't used but for many traversals on one visitor may necessitate.  More... | |
| SgGraphTraversal (const SgGraphTraversal &) | |
| const SgGraphTraversal & | operator= (const SgGraphTraversal &) | 
| InheritedAttributeType | traverse (SgGraphNode *basenode, SgIncidenceDirectedGraph *g, InheritedAttributeType inheritedValue, InheritedAttributeType nullInherit, SgGraphNode *endnode, bool insep=false, bool pcHk=false) | 
| This is the function that is used by the user directly to start the algorithm.  More... | |
Public Attributes | |
| std::map< Vertex, int > | vertintmap | 
| std::map< Edge, int > | edgeintmap | 
| std::map< int, Vertex > | intvertmap | 
| std::map< int, Edge > | intedgemap | 
| int | pathnum | 
| std::set< std::map< int, std::set< int > > > | subpathmap | 
| int | loopNum | 
| int | nullNum | 
| std::set< SgDirectedGraphEdge * > | nullEdgesOrdered | 
| std::map< SgGraphNode *, int > | loopNumMap | 
| std::map< SgGraphNode *, int > | pathValMap | 
| int | nullloops | 
| std::vector< std::vector< SgGraphNode * > > | looppaths | 
| std::vector< std::vector< SgGraphNode * > > | iLoops | 
| std::vector< SgGraphNode * > | ifstatements | 
| int | nullEdgesPaths | 
| int | turns | 
| int | numnodes | 
| SgGraphNode * | nullnode | 
| std::map< SgGraphNode *, int > | primenode | 
| bool | done | 
| std::set< SgGraphNode * > | lstN | 
| std::map< SgGraphNode *, std::vector< std::set< int > > > | lstordmap | 
| std::set< SgGraphNode * > | solvedLoops | 
| std::map< SgGraphNode *, std::vector< SgGraphNode * > > | checkednodes | 
| std::map< SgGraphNode *, std::set< SgGraphNode * > > | downed | 
| InheritedAttributeType | nullInherit | 
| std::set< SgGraphNode * > | loopSet | 
Protected Member Functions | |
| virtual InheritedAttributeType | evaluateInheritedAttribute (SgGraphNode *n, std::vector< InheritedAttributeType > inheritedValues)=0 | 
| virtual SynthesizedAttributeType | evaluateSynthesizedAttribute (SgGraphNode *n, InheritedAttributeType in, SynthesizedAttributesList l)=0 | 
| virtual void | pathAnalyze (std::vector< SgGraphNode * > &pth, bool loop=false, std::set< std::vector< SgGraphNode * > > &incloops=NULL)=0 | 
| SynthesizedAttributeType | defaultSynthesizedAttribute (InheritedAttributeType) | 
| void SgGraphTraversal< CFG >::constructPathAnalyzer | ( | CFG * | g, | 
| bool | unbounded = false,  | 
        ||
| Vertex | begin = 0,  | 
        ||
| Vertex | end = 0,  | 
        ||
| bool | ns = true  | 
        ||
| ) | 
This is the function that is used by the user directly to start the algorithm.
It is immediately available to the user
SgGraphTraversal::constructPathAnalyzer Input:
Definition at line 1119 of file graphProcessing.h.
| std::vector< int > SgGraphTraversal< CFG >::getInEdges | ( | int & | node, | 
| CFG *& | g | ||
| ) | 
Gets out edges with integer inputs, internal use only SgGraphTraversal::getInEdges Input:
| [node] | int, integer representation of the node to get the in edges from | 
| [g] | CFG* g, CFG | 
Definition at line 263 of file graphProcessing.h.
| std::vector< int > SgGraphTraversal< CFG >::getOutEdges | ( | int & | node, | 
| CFG *& | g | ||
| ) | 
Gets out edges with integer inputs, internal use only SgGraphTraversal::getOutEdges Input:
| [node] | int, integer representation of the node to get the out edges from | 
| [g] | CFG* g, CFG | 
Definition at line 295 of file graphProcessing.h.
      
  | 
  inline | 
Gets the target of an edge SgGraphTraversal::getTarget Input:
| [edge] | int& integer representation of edge in quesution | 
| [g] | the CFG*& CFG used | 
Definition at line 245 of file graphProcessing.h.
      
  | 
  inline | 
Gets the source of an edge SgGraphTraversal::getSource Input:
| [edge] | int& integer representation of edge in question | 
| [g] | CFG*& the CFG used | 
Definition at line 226 of file graphProcessing.h.
| void SgGraphTraversal< CFG >::firstPrepGraph | ( | CFG *& | g | ) | 
DEPRECATED This is the function that preps the graph for traversal, currently this one isn't used but for many traversals on one visitor may necessitate.
SgGraphTraversal::firstPrepGraph Input:
| [g] | CFG*& g, CFG calculated previously | 
Definition at line 1376 of file graphProcessing.h.
| InheritedAttributeType SgGraphTraversal< InheritedAttributeType, SynthesizedAttributeType >::traverse | ( | SgGraphNode * | n, | 
| SgIncidenceDirectedGraph * | g, | ||
| InheritedAttributeType | inheritedValue, | ||
| InheritedAttributeType | nullI, | ||
| SgGraphNode * | endnode, | ||
| bool | insep = false,  | 
        ||
| bool | pCh = false  | 
        ||
| ) | 
This is the function that is used by the user directly to start the algorithm.
It is immediately available to the user
SgGraphTraversal::traverse Input:
| [n] | n starting node | 
| [g] | SgIncidenceDirectedGraph* g, CFG calculated previously | 
| [inheritedValue] | InheritedAttributeType inheritedValue, value of the starting node | 
| [nullI] | InheritedAttributeType nullI, value of the null Attribute, i.e. what to attribute to a node with no value\ | 
| [endnode] | SgGraphNode* endnode, final node | 
| [insep] | boolean to decide inseparability of the analysis function, not yet in use, set automatically to false | 
| [pCh] | deprecated, set to false | 
Definition at line 360 of file graphProcessingSgIncGraph.h.
 1.8.17