OA::ICFG::ICFG Class Reference

#include <ICFG.hpp>

Inheritance diagram for OA::ICFG::ICFG:

Inheritance graph
[legend]
Collaboration diagram for OA::ICFG::ICFG:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ICFG ()
virtual ~ICFG ()
void addEdge (OA_ptr< Edge > pEdge)
void removeEdge (OA_ptr< Edge > e)
void dump (std::ostream &os, OA_ptr< IRHandlesIRInterface > ir)
void dumpdot (std::ostream &os, OA_ptr< IRHandlesIRInterface > ir)
void dumpbase (std::ostream &os)
virtual void output (OA::IRHandlesIRInterface &ir)
OA_ptr< NodesIteratorInterfacegetICFGNodesIterator () const
OA_ptr< EdgesIteratorInterfacegetICFGEdgesIterator () const
OA_ptr< NodesIteratorInterfacegetICFGEntryNodesIterator () const
OA_ptr< NodesIteratorInterfacegetICFGExitNodesIterator () const
OA_ptr< NodesIteratorInterfacegetICFGReversePostDFSIterator (DGraph::DGraphEdgeDirection pOrient)
OA_ptr< NodesIteratorInterfacegetICFGDFSIterator (OA_ptr< NodeInterface > n)

Private Attributes

OA_ptr< NodemEntry
OA_ptr< NodemExit
OA_ptr< std::list< OA_ptr
< Node > > > 
mCallNodes
OA_ptr< std::list< OA_ptr
< Edge > > > 
mCallEdges
OA_ptr< std::list< OA_ptr
< Node > > > 
mReturnNodes
OA_ptr< std::list< OA_ptr
< Edge > > > 
mReturnEdges


Detailed Description

Definition at line 361 of file ICFG.hpp.


Constructor & Destructor Documentation

OA::ICFG::ICFG::ICFG (  ) 

OA::ICFG::ICFG::~ICFG (  )  [virtual]

Definition at line 568 of file ICFG.cpp.

References mEntry, mExit, and NULL.


Member Function Documentation

void OA::ICFG::ICFG::addEdge ( OA_ptr< Edge pEdge  ) 

get ICFGEdge that is associated with given CFG edge in one of the CFGs we contain get ICFGNode that is associated with given CFG node in one of the CFGs we contain

Definition at line 597 of file ICFG.cpp.

References OA::ICFG::CALL_EDGE, OA::OA_ptr< T >::convert(), mCallEdges, mReturnEdges, OA::OA_ptr< T >::ptrEqual(), and OA::ICFG::RETURN_EDGE.

Here is the call graph for this function:

void OA::ICFG::ICFG::dump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface ir 
)

void OA::ICFG::ICFG::dumpbase ( std::ostream &  os  )  [inline]

Definition at line 416 of file ICFG.hpp.

void OA::ICFG::ICFG::dumpdot ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface ir 
)

OA_ptr< NodesIteratorInterface > OA::ICFG::ICFG::getICFGDFSIterator ( OA_ptr< NodeInterface n  )  [virtual]

Implements OA::ICFG::ICFGInterface.

Definition at line 828 of file ICFG.cpp.

References OA::DGraph::DGraphImplement::getDFSIterator().

Here is the call graph for this function:

OA_ptr< EdgesIteratorInterface > OA::ICFG::ICFG::getICFGEdgesIterator (  )  const [virtual]

Implements OA::ICFG::ICFGInterface.

Definition at line 806 of file ICFG.cpp.

References OA::DGraph::DGraphImplement::getEdgesIterator().

Here is the call graph for this function:

OA_ptr< NodesIteratorInterface > OA::ICFG::ICFG::getICFGEntryNodesIterator (  )  const [virtual]

Implements OA::ICFG::ICFGInterface.

Definition at line 787 of file ICFG.cpp.

References OA::DGraph::DGraphImplement::getEntryNodesIterator().

Here is the call graph for this function:

OA_ptr< NodesIteratorInterface > OA::ICFG::ICFG::getICFGExitNodesIterator (  )  const [virtual]

Implements OA::ICFG::ICFGInterface.

Definition at line 797 of file ICFG.cpp.

References OA::DGraph::DGraphImplement::getExitNodesIterator().

Here is the call graph for this function:

OA_ptr< NodesIteratorInterface > OA::ICFG::ICFG::getICFGNodesIterator (  )  const [virtual]

Implements OA::ICFG::ICFGInterface.

Definition at line 777 of file ICFG.cpp.

References OA::DGraph::DGraphImplement::getNodesIterator().

Here is the call graph for this function:

OA_ptr< NodesIteratorInterface > OA::ICFG::ICFG::getICFGReversePostDFSIterator ( DGraph::DGraphEdgeDirection  pOrient  )  [virtual]

Implements OA::ICFG::ICFGInterface.

Definition at line 817 of file ICFG.cpp.

References OA::DGraph::DGraphImplement::getReversePostDFSIterator().

Here is the call graph for this function:

void OA::ICFG::ICFG::output ( OA::IRHandlesIRInterface ir  )  [virtual]

void OA::ICFG::ICFG::removeEdge ( OA_ptr< Edge e  ) 

Definition at line 665 of file ICFG.cpp.

References OA::ICFG::CALL_EDGE, OA::OA_ptr< T >::convert(), mCallEdges, mReturnEdges, OA::OA_ptr< T >::ptrEqual(), and OA::ICFG::RETURN_EDGE.

Here is the call graph for this function:


Member Data Documentation

OA_ptr<std::list<OA_ptr<Edge> > > OA::ICFG::ICFG::mCallEdges [private]

Definition at line 490 of file ICFG.hpp.

Referenced by addEdge(), ICFG(), and removeEdge().

OA_ptr<std::list<OA_ptr<Node> > > OA::ICFG::ICFG::mCallNodes [private]

Definition at line 489 of file ICFG.hpp.

Referenced by ICFG().

Definition at line 477 of file ICFG.hpp.

Referenced by ICFG(), and ~ICFG().

Definition at line 478 of file ICFG.hpp.

Referenced by ICFG(), and ~ICFG().

OA_ptr<std::list<OA_ptr<Edge> > > OA::ICFG::ICFG::mReturnEdges [private]

Definition at line 492 of file ICFG.hpp.

Referenced by addEdge(), ICFG(), and removeEdge().

OA_ptr<std::list<OA_ptr<Node> > > OA::ICFG::ICFG::mReturnNodes [private]

Definition at line 491 of file ICFG.hpp.

Referenced by ICFG().


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

Generated on Fri Jul 24 05:42:52 2009 for OpenADFortTk (extended to Open64) by  doxygen 1.5.7.1