//==================================================================================================
// G r a p h _ p r o b l e m                                                              Interface
// M i n _ c o s t _ t e n s i o n
//                                                                                By Bruno Bachelet
//==================================================================================================
// Copyright (c) 1999-2016
// Bruno Bachelet - bruno@nawouak.net - http://www.nawouak.net
//
// This file is part of the B++ Library. This library is free software; you can redistribute it
// and/or modify it under the terms of the GNU Library General Public License as published by the
// Free Software Foundation; either version 2 of the License, or (at your option) any later
// version.
//
// This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
// without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
// the GNU Library General Public License for more details (http://www.gnu.org).

/*DESCRIPTION*/
/* This module provides facilities to find a tension of minimum cost in a graph (the tension of
   an arc is supposed always positive). */

// File Name //-------------------------------------------------------------------------------------
#line __LINE__ "graph_problem/min_cost_tension.hpp"

// Guardian //--------------------------------------------------------------------------------------
#ifndef guGraphProblemMinCostTension
#define guGraphProblemMinCostTension

// Headers //---------------------------------------------------------------------------------------
#include <bpp/graph_problem/min_cost_tension/aggregation.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/branch_bound.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/conforming_linear.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/conforming_convex.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/conforming_piecewise.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/dual_cost_scaling.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/linear_system.hpp> /*INCLUDE*/
#include <bpp/graph_problem/min_cost_tension/random_generation.hpp> /*INCLUDE*/

namespace bpp {

// Macrocommands //---------------------------------------------------------------------------------
#define tdGraph class prArcData,class prNodeData
#define tuGraph prArcData,prNodeData

// Namespaces //------------------------------------------------------------------------------------
#define public_area  graphProblemMinCostTension
#define private_area graphProblemMinCostTension_private

namespace public_area  {
 /*NAMESPACE*/ using namespace graphProblemMinCostTensionAlgorithm;
 /*NAMESPACE*/ using namespace graphProblemMinCostTensionRandomGeneration;
}

namespace private_area {}

// Types & Classes //-------------------------------------------------------------------------------
namespace public_area  {}
namespace private_area {}

// Functions Interface //---------------------------------------------------------------------------
namespace public_area  {}
namespace private_area {}

// Errors //----------------------------------------------------------------------------------------
namespace public_area {}

// Constants & Variables //-------------------------------------------------------------------------
namespace public_area  {}
namespace private_area {}

// X X X  Interface //------------------------------------------------------------------------------
namespace {}

// Functions Inline //------------------------------------------------------------------------------
namespace public_area  {}
namespace private_area {}

// X X X  Inline //---------------------------------------------------------------------------------
namespace {}

// End //-------------------------------------------------------------------------------------------
}
#undef tdGraph
#undef tuGraph
#undef public_area
#undef private_area
#endif