angel::EdgeElim Class Reference

Graph-independent edge elimination. More...

#include <angel_types.hpp>

List of all members.

Public Member Functions

 EdgeElim ()
 EdgeElim (const c_graph_t::edge_t &e, bool isFront, const c_graph_t &angelLCG)
 EdgeElim (const edge_bool_t &be, const c_graph_t &angelLCG)
 EdgeElim (const edge_ij_elim_t &eij)
std::string debug () const
bool isFront () const
unsigned int getSource () const
unsigned int getTarget () const
c_graph_t::edge_t getE (const c_graph_t &angelLCG) const
edge_bool_t getBool (const c_graph_t &angelLCG) const
unsigned int getCost (const c_graph_t &angelLCG) const
 returns cost (nontrivial mults) of performing this edge elim on angelLCG

Private Attributes

bool myIsFrontFlag
unsigned int mySource
unsigned int myTarget


Detailed Description

Graph-independent edge elimination.

Class for representing an edge elimination. The edge is represented by the unsigned ints that correspond to its source and target. This allows us to represent a rerouting independently of a particular graph instance.

Definition at line 725 of file angel_types.hpp.


Constructor & Destructor Documentation

angel::EdgeElim::EdgeElim (  ) 

Definition at line 459 of file angel_types.cpp.

angel::EdgeElim::EdgeElim ( const c_graph_t::edge_t e,
bool  isFront,
const c_graph_t angelLCG 
)

Definition at line 462 of file angel_types.cpp.

angel::EdgeElim::EdgeElim ( const edge_bool_t be,
const c_graph_t angelLCG 
)

Definition at line 470 of file angel_types.cpp.

angel::EdgeElim::EdgeElim ( const edge_ij_elim_t eij  ) 

Definition at line 477 of file angel_types.cpp.


Member Function Documentation

std::string angel::EdgeElim::debug (  )  const

Definition at line 483 of file angel_types.cpp.

References myIsFrontFlag, mySource, and myTarget.

Referenced by angel::Transformation::debug().

bool angel::EdgeElim::isFront (  )  const

Definition at line 491 of file angel_types.cpp.

References myIsFrontFlag.

Referenced by xaifBoosterCrossCountryInterface::compute_partial_elimination_sequence(), xaifBoosterCrossCountryInterface::compute_partial_transformation_sequence(), and angel::edge_elim_effect().

unsigned int angel::EdgeElim::getSource (  )  const

Definition at line 495 of file angel_types.cpp.

References mySource.

unsigned int angel::EdgeElim::getTarget (  )  const

Definition at line 499 of file angel_types.cpp.

References myTarget.

c_graph_t::edge_t angel::EdgeElim::getE ( const c_graph_t angelLCG  )  const

Definition at line 503 of file angel_types.cpp.

References angel::getEdge(), mySource, and myTarget.

Referenced by xaifBoosterCrossCountryInterface::compute_partial_elimination_sequence(), xaifBoosterCrossCountryInterface::compute_partial_transformation_sequence(), angel::edge_elim_effect(), and getCost().

Here is the call graph for this function:

edge_bool_t angel::EdgeElim::getBool ( const c_graph_t angelLCG  )  const

Definition at line 507 of file angel_types.cpp.

References angel::getEdge(), myIsFrontFlag, mySource, and myTarget.

Here is the call graph for this function:

unsigned int angel::EdgeElim::getCost ( const c_graph_t angelLCG  )  const

returns cost (nontrivial mults) of performing this edge elim on angelLCG

Definition at line 511 of file angel_types.cpp.

References getE(), myIsFrontFlag, mySource, myTarget, and angel::UNIT_EDGE.

Here is the call graph for this function:


Member Data Documentation

bool angel::EdgeElim::myIsFrontFlag [private]

Definition at line 756 of file angel_types.hpp.

Referenced by debug(), getBool(), getCost(), and isFront().

unsigned int angel::EdgeElim::mySource [private]

Definition at line 757 of file angel_types.hpp.

Referenced by debug(), getBool(), getCost(), getE(), and getSource().

unsigned int angel::EdgeElim::myTarget [private]

Definition at line 758 of file angel_types.hpp.

Referenced by debug(), getBool(), getCost(), getE(), and getTarget().


The documentation for this class was generated from the following files:
Generated on Wed Mar 11 10:34:40 2009 for angel by  doxygen 1.5.3