angel  mercurial changeset:
include/reroutings.hpp
Go to the documentation of this file.
00001 /*
00002 #############################################################
00003 # This file is part of angel released under the BSD license #
00004 # The full COPYRIGHT notice can be found in the top         #
00005 # level directory of the angel distribution                 #
00006 #############################################################
00007 */
00008 
00009 #ifdef USEXAIFBOOSTER
00010 
00011 #ifndef         _reroutings_include_
00012 #define         _reroutings_include_
00013 
00014 #include "angel_types.hpp"
00015 #include "xaifBooster/algorithms/CrossCountryInterface/inc/AwarenessLevel.hpp"
00016 
00017 using std::list;
00018 using std::vector;
00019 using std::cout;
00020 using boost::tie;
00021 
00022 namespace angel {
00023 
00030 void reroutable_edges (c_graph_t& angelLCG,
00031                        vector<edge_reroute_t>& erv);
00032 
00033 unsigned int reroutable_edges(c_graph_t& angelLCG,
00034                               vector<Rerouting>& allReroutingsV);
00035 
00040 int reroute_effect (const edge_reroute_t er,
00041                     const c_graph_t& angelLCG,
00042                     const xaifBoosterCrossCountryInterface::AwarenessLevel::AwarenessLevel_E ourAwarenessLevel,
00043                     bool& incrementIsTrivial);
00044 
00045 unsigned int preroute_edge_directly (edge_reroute_t er,
00046                                      c_graph_t& angelLCG,
00047                                      list<EdgeRef_t>& edge_ref_list,
00048                                      xaifBoosterCrossCountryInterface::JacobianAccumulationExpressionList& jae_list);
00049 
00050 unsigned int postroute_edge_directly (edge_reroute_t er,
00051                                       c_graph_t& angelLCG,
00052                                       list<EdgeRef_t>& edge_ref_list,
00053                                       xaifBoosterCrossCountryInterface::JacobianAccumulationExpressionList& jae_list);
00054 
00055 unsigned int prerouteEdge_noJAE (edge_reroute_t er,
00056                                  c_graph_t& angelLCG);
00057 
00058 unsigned int postrouteEdge_noJAE (edge_reroute_t er,
00059                                   c_graph_t& angelLCG);
00060 
00061 } // namespace angel
00062 
00063 #endif // _reroutings_include_
00064 
00065 #endif  // USEXAIFBOOSTER
00066 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines