0
9
0
| ... | ... |
@@ -3,34 +3,34 @@ |
| 3 | 3 |
* This file is a part of LEMON, a generic C++ optimization library. |
| 4 | 4 |
* |
| 5 | 5 |
* Copyright (C) 2003-2009 |
| 6 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 |
#ifndef LEMON_BITS_PRED_MAP_PATH_H |
|
| 20 |
#define LEMON_BITS_PRED_MAP_PATH_H |
|
| 19 |
#ifndef LEMON_BITS_PATH_DUMP_H |
|
| 20 |
#define LEMON_BITS_PATH_DUMP_H |
|
| 21 | 21 |
|
| 22 | 22 |
#include <lemon/core.h> |
| 23 | 23 |
#include <lemon/concept_check.h> |
| 24 | 24 |
|
| 25 | 25 |
namespace lemon {
|
| 26 | 26 |
|
| 27 | 27 |
template <typename _Digraph, typename _PredMap> |
| 28 | 28 |
class PredMapPath {
|
| 29 | 29 |
public: |
| 30 | 30 |
typedef True RevPathTag; |
| 31 | 31 |
|
| 32 | 32 |
typedef _Digraph Digraph; |
| 33 | 33 |
typedef typename Digraph::Arc Arc; |
| 34 | 34 |
typedef _PredMap PredMap; |
| 35 | 35 |
|
| 36 | 36 |
PredMapPath(const Digraph& _digraph, const PredMap& _predMap, |
| ... | ... |
@@ -3,32 +3,32 @@ |
| 3 | 3 |
* This file is a part of LEMON, a generic C++ optimization library. |
| 4 | 4 |
* |
| 5 | 5 |
* Copyright (C) 2003-2009 |
| 6 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 |
#ifndef LEMON_WINDOWS_H |
|
| 20 |
#define LEMON_WINDOWS_H |
|
| 19 |
#ifndef LEMON_BITS_WINDOWS_H |
|
| 20 |
#define LEMON_BITS_WINDOWS_H |
|
| 21 | 21 |
|
| 22 | 22 |
#include <string> |
| 23 | 23 |
|
| 24 | 24 |
namespace lemon {
|
| 25 | 25 |
namespace bits {
|
| 26 | 26 |
void getWinProcTimes(double &rtime, |
| 27 | 27 |
double &utime, double &stime, |
| 28 | 28 |
double &cutime, double &cstime); |
| 29 | 29 |
std::string getWinFormattedDate(); |
| 30 | 30 |
int getWinRndSeed(); |
| 31 | 31 |
} |
| 32 | 32 |
} |
| 33 | 33 |
|
| 34 | 34 |
#endif |
| ... | ... |
@@ -3,34 +3,34 @@ |
| 3 | 3 |
* This file is a part of LEMON, a generic C++ optimization library. |
| 4 | 4 |
* |
| 5 | 5 |
* Copyright (C) 2003-2009 |
| 6 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 |
#ifndef LEMON_CONCEPT_DIGRAPH_H |
|
| 20 |
#define LEMON_CONCEPT_DIGRAPH_H |
|
| 19 |
#ifndef LEMON_CONCEPTS_DIGRAPH_H |
|
| 20 |
#define LEMON_CONCEPTS_DIGRAPH_H |
|
| 21 | 21 |
|
| 22 | 22 |
///\ingroup graph_concepts |
| 23 | 23 |
///\file |
| 24 | 24 |
///\brief The concept of directed graphs. |
| 25 | 25 |
|
| 26 | 26 |
#include <lemon/core.h> |
| 27 | 27 |
#include <lemon/concepts/maps.h> |
| 28 | 28 |
#include <lemon/concept_check.h> |
| 29 | 29 |
#include <lemon/concepts/graph_components.h> |
| 30 | 30 |
|
| 31 | 31 |
namespace lemon {
|
| 32 | 32 |
namespace concepts {
|
| 33 | 33 |
|
| 34 | 34 |
/// \ingroup graph_concepts |
| 35 | 35 |
/// |
| 36 | 36 |
/// \brief Class describing the concept of directed graphs. |
| ... | ... |
@@ -471,17 +471,17 @@ |
| 471 | 471 |
template <typename _Digraph> |
| 472 | 472 |
struct Constraints {
|
| 473 | 473 |
void constraints() {
|
| 474 | 474 |
checkConcept<IterableDigraphComponent<>, _Digraph>(); |
| 475 | 475 |
checkConcept<IDableDigraphComponent<>, _Digraph>(); |
| 476 | 476 |
checkConcept<MappableDigraphComponent<>, _Digraph>(); |
| 477 | 477 |
} |
| 478 | 478 |
}; |
| 479 | 479 |
|
| 480 | 480 |
}; |
| 481 | 481 |
|
| 482 | 482 |
} //namespace concepts |
| 483 | 483 |
} //namespace lemon |
| 484 | 484 |
|
| 485 | 485 |
|
| 486 | 486 |
|
| 487 |
#endif |
|
| 487 |
#endif |
| ... | ... |
@@ -7,37 +7,36 @@ |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 | 19 |
///\ingroup graph_concepts |
| 20 | 20 |
///\file |
| 21 | 21 |
///\brief The concept of Undirected Graphs. |
| 22 | 22 |
|
| 23 |
#ifndef LEMON_CONCEPT_GRAPH_H |
|
| 24 |
#define LEMON_CONCEPT_GRAPH_H |
|
| 23 |
#ifndef LEMON_CONCEPTS_GRAPH_H |
|
| 24 |
#define LEMON_CONCEPTS_GRAPH_H |
|
| 25 | 25 |
|
| 26 | 26 |
#include <lemon/concepts/graph_components.h> |
| 27 |
#include <lemon/concepts/graph.h> |
|
| 28 | 27 |
#include <lemon/core.h> |
| 29 | 28 |
|
| 30 | 29 |
namespace lemon {
|
| 31 | 30 |
namespace concepts {
|
| 32 | 31 |
|
| 33 | 32 |
/// \ingroup graph_concepts |
| 34 | 33 |
/// |
| 35 | 34 |
/// \brief Class describing the concept of Undirected Graphs. |
| 36 | 35 |
/// |
| 37 | 36 |
/// This class describes the common interface of all Undirected |
| 38 | 37 |
/// Graphs. |
| 39 | 38 |
/// |
| 40 | 39 |
/// As all concept describing classes it provides only interface |
| 41 | 40 |
/// without any sensible implementation. So any algorithm for |
| 42 | 41 |
/// undirected graph should compile with this class, but it will not |
| 43 | 42 |
/// run properly, of course. |
| ... | ... |
@@ -8,34 +8,34 @@ |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 | 19 |
///\ingroup graph_concepts |
| 20 | 20 |
///\file |
| 21 | 21 |
///\brief The concept of graph components. |
| 22 | 22 |
|
| 23 | 23 |
|
| 24 |
#ifndef LEMON_CONCEPT_GRAPH_COMPONENTS_H |
|
| 25 |
#define LEMON_CONCEPT_GRAPH_COMPONENTS_H |
|
| 24 |
#ifndef LEMON_CONCEPTS_GRAPH_COMPONENTS_H |
|
| 25 |
#define LEMON_CONCEPTS_GRAPH_COMPONENTS_H |
|
| 26 | 26 |
|
| 27 | 27 |
#include <lemon/core.h> |
| 28 | 28 |
#include <lemon/concepts/maps.h> |
| 29 | 29 |
|
| 30 | 30 |
#include <lemon/bits/alteration_notifier.h> |
| 31 | 31 |
|
| 32 | 32 |
namespace lemon {
|
| 33 | 33 |
namespace concepts {
|
| 34 | 34 |
|
| 35 | 35 |
/// \brief Skeleton class for graph Node and Arc types |
| 36 | 36 |
/// |
| 37 | 37 |
/// This class describes the interface of Node and Arc (and Edge |
| 38 | 38 |
/// in undirected graphs) subtypes of graph types. |
| 39 | 39 |
/// |
| 40 | 40 |
/// \note This class is a template class so that we can use it to |
| 41 | 41 |
/// create graph skeleton classes. The reason for this is than Node |
| ... | ... |
@@ -7,34 +7,34 @@ |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 | 19 |
///\ingroup concept |
| 20 | 20 |
///\file |
| 21 | 21 |
///\brief The concept of heaps. |
| 22 | 22 |
|
| 23 |
#ifndef LEMON_CONCEPT_HEAP_H |
|
| 24 |
#define LEMON_CONCEPT_HEAP_H |
|
| 23 |
#ifndef LEMON_CONCEPTS_HEAP_H |
|
| 24 |
#define LEMON_CONCEPTS_HEAP_H |
|
| 25 | 25 |
|
| 26 | 26 |
#include <lemon/core.h> |
| 27 | 27 |
#include <lemon/concept_check.h> |
| 28 | 28 |
|
| 29 | 29 |
namespace lemon {
|
| 30 | 30 |
|
| 31 | 31 |
namespace concepts {
|
| 32 | 32 |
|
| 33 | 33 |
/// \addtogroup concept |
| 34 | 34 |
/// @{
|
| 35 | 35 |
|
| 36 | 36 |
/// \brief The heap concept. |
| 37 | 37 |
/// |
| 38 | 38 |
/// Concept class describing the main interface of heaps. |
| 39 | 39 |
template <typename Priority, typename ItemIntMap> |
| 40 | 40 |
class Heap {
|
| ... | ... |
@@ -230,17 +230,17 @@ |
| 230 | 230 |
own_state = heap.state(own_item); |
| 231 | 231 |
heap.state(own_item, own_state); |
| 232 | 232 |
|
| 233 | 233 |
own_state = _Heap::PRE_HEAP; |
| 234 | 234 |
own_state = _Heap::IN_HEAP; |
| 235 | 235 |
own_state = _Heap::POST_HEAP; |
| 236 | 236 |
} |
| 237 | 237 |
|
| 238 | 238 |
_Heap& heap; |
| 239 | 239 |
ItemIntMap& map; |
| 240 | 240 |
}; |
| 241 | 241 |
}; |
| 242 | 242 |
|
| 243 | 243 |
/// @} |
| 244 | 244 |
} // namespace lemon |
| 245 | 245 |
} |
| 246 |
#endif |
|
| 246 |
#endif |
| ... | ... |
@@ -3,34 +3,34 @@ |
| 3 | 3 |
* This file is a part of LEMON, a generic C++ optimization library. |
| 4 | 4 |
* |
| 5 | 5 |
* Copyright (C) 2003-2009 |
| 6 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 |
#ifndef LEMON_CONCEPT_MAPS_H |
|
| 20 |
#define LEMON_CONCEPT_MAPS_H |
|
| 19 |
#ifndef LEMON_CONCEPTS_MAPS_H |
|
| 20 |
#define LEMON_CONCEPTS_MAPS_H |
|
| 21 | 21 |
|
| 22 | 22 |
#include <lemon/core.h> |
| 23 | 23 |
#include <lemon/concept_check.h> |
| 24 | 24 |
|
| 25 | 25 |
///\ingroup map_concepts |
| 26 | 26 |
///\file |
| 27 | 27 |
///\brief The concept of maps. |
| 28 | 28 |
|
| 29 | 29 |
namespace lemon {
|
| 30 | 30 |
|
| 31 | 31 |
namespace concepts {
|
| 32 | 32 |
|
| 33 | 33 |
/// \addtogroup map_concepts |
| 34 | 34 |
/// @{
|
| 35 | 35 |
|
| 36 | 36 |
/// Readable map concept |
| ... | ... |
@@ -200,17 +200,17 @@ |
| 200 | 200 |
Reference ref; |
| 201 | 201 |
ConstReference cref; |
| 202 | 202 |
const typename _ReferenceMap::Key& own_key; |
| 203 | 203 |
typename _ReferenceMap::Value& own_val; |
| 204 | 204 |
typename _ReferenceMap::Reference own_ref; |
| 205 | 205 |
typename _ReferenceMap::ConstReference own_cref; |
| 206 | 206 |
_ReferenceMap& m; |
| 207 | 207 |
}; |
| 208 | 208 |
}; |
| 209 | 209 |
|
| 210 | 210 |
// @} |
| 211 | 211 |
|
| 212 | 212 |
} //namespace concepts |
| 213 | 213 |
|
| 214 | 214 |
} //namespace lemon |
| 215 | 215 |
|
| 216 |
#endif |
|
| 216 |
#endif |
| ... | ... |
@@ -8,34 +8,34 @@ |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 | 19 |
///\ingroup concept |
| 20 | 20 |
///\file |
| 21 | 21 |
///\brief Classes for representing paths in digraphs. |
| 22 | 22 |
/// |
| 23 | 23 |
|
| 24 |
#ifndef LEMON_CONCEPT_PATH_H |
|
| 25 |
#define LEMON_CONCEPT_PATH_H |
|
| 24 |
#ifndef LEMON_CONCEPTS_PATH_H |
|
| 25 |
#define LEMON_CONCEPTS_PATH_H |
|
| 26 | 26 |
|
| 27 | 27 |
#include <lemon/core.h> |
| 28 | 28 |
#include <lemon/concept_check.h> |
| 29 | 29 |
|
| 30 | 30 |
namespace lemon {
|
| 31 | 31 |
namespace concepts {
|
| 32 | 32 |
|
| 33 | 33 |
/// \addtogroup concept |
| 34 | 34 |
/// @{
|
| 35 | 35 |
|
| 36 | 36 |
/// \brief A skeleton structure for representing directed paths in |
| 37 | 37 |
/// a digraph. |
| 38 | 38 |
/// |
| 39 | 39 |
/// A skeleton structure for representing directed paths in a |
| 40 | 40 |
/// digraph. |
| 41 | 41 |
/// \tparam _Digraph The digraph type in which the path is. |
| ... | ... |
@@ -292,17 +292,17 @@ |
| 292 | 292 |
template <typename _Path> |
| 293 | 293 |
struct Constraints {
|
| 294 | 294 |
void constraints() {
|
| 295 | 295 |
function_requires<_path_bits:: |
| 296 | 296 |
PathDumperConstraints<Digraph, _Path> >(); |
| 297 | 297 |
} |
| 298 | 298 |
}; |
| 299 | 299 |
|
| 300 | 300 |
}; |
| 301 | 301 |
|
| 302 | 302 |
|
| 303 | 303 |
///@} |
| 304 | 304 |
} |
| 305 | 305 |
|
| 306 | 306 |
} // namespace lemon |
| 307 | 307 |
|
| 308 |
#endif |
|
| 308 |
#endif |
| ... | ... |
@@ -3,34 +3,34 @@ |
| 3 | 3 |
* This file is a part of LEMON, a generic C++ optimization library. |
| 4 | 4 |
* |
| 5 | 5 |
* Copyright (C) 2003-2008 |
| 6 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
| 7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
| 8 | 8 |
* |
| 9 | 9 |
* Permission to use, modify and distribute this software is granted |
| 10 | 10 |
* provided that this copyright notice appears in all copies. For |
| 11 | 11 |
* precise terms see the accompanying LICENSE file. |
| 12 | 12 |
* |
| 13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
| 14 | 14 |
* express or implied, and with no claim as to its suitability for any |
| 15 | 15 |
* purpose. |
| 16 | 16 |
* |
| 17 | 17 |
*/ |
| 18 | 18 |
|
| 19 |
#ifndef LEMON_LP_SKELETON |
|
| 20 |
#define LEMON_LP_SKELETON |
|
| 19 |
#ifndef LEMON_LP_SKELETON_H |
|
| 20 |
#define LEMON_LP_SKELETON_H |
|
| 21 | 21 |
|
| 22 | 22 |
#include <lemon/lp_base.h> |
| 23 | 23 |
|
| 24 | 24 |
///\file |
| 25 | 25 |
///\brief A skeleton file to implement LP solver interfaces |
| 26 | 26 |
namespace lemon {
|
| 27 | 27 |
|
| 28 | 28 |
///A skeleton class to implement LP solver interfaces |
| 29 | 29 |
class SkeletonSolverBase : public virtual LpBase {
|
| 30 | 30 |
int col_num,row_num; |
| 31 | 31 |
|
| 32 | 32 |
protected: |
| 33 | 33 |
|
| 34 | 34 |
SkeletonSolverBase() |
| 35 | 35 |
: col_num(-1), row_num(-1) {}
|
| 36 | 36 |
|
| ... | ... |
@@ -213,17 +213,17 @@ |
| 213 | 213 |
///\bug Wrong interface |
| 214 | 214 |
/// |
| 215 | 215 |
virtual ProblemType _getType() const; |
| 216 | 216 |
|
| 217 | 217 |
///\e |
| 218 | 218 |
virtual MipSkeleton* _newSolver() const; |
| 219 | 219 |
|
| 220 | 220 |
///\e |
| 221 | 221 |
virtual MipSkeleton* _cloneSolver() const; |
| 222 | 222 |
///\e |
| 223 | 223 |
virtual const char* _solverName() const; |
| 224 | 224 |
|
| 225 | 225 |
}; |
| 226 | 226 |
|
| 227 | 227 |
} //namespace lemon |
| 228 | 228 |
|
| 229 |
#endif |
|
| 229 |
#endif |
0 comments (0 inline)