Changes in lemon/lp_skeleton.h [541:89e29e22d479:459:ed54c0d13df0] in lemon-1.2
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/lp_skeleton.h
r541 r459 17 17 */ 18 18 19 #ifndef LEMON_LP_SKELETON _H20 #define LEMON_LP_SKELETON _H19 #ifndef LEMON_LP_SKELETON 20 #define LEMON_LP_SKELETON 21 21 22 22 #include <lemon/lp_base.h> 23 23 24 24 ///\file 25 ///\brief Skeleton file to implement LP/MIP solver interfaces 26 /// 27 ///The classes in this file do nothing, but they can serve as skeletons when 28 ///implementing an interface to new solvers. 25 ///\brief A skeleton file to implement LP solver interfaces 29 26 namespace lemon { 30 27 31 ///A skeleton class to implement LP/MIP solver base interface 32 33 ///This class does nothing, but it can serve as a skeleton when 34 ///implementing an interface to new solvers. 28 ///A skeleton class to implement LP solver interfaces 35 29 class SkeletonSolverBase : public virtual LpBase { 36 30 int col_num,row_num; … … 143 137 }; 144 138 145 /// \brief Skeleton class for an LP solver interface139 /// \brief Interface for a skeleton LP solver 146 140 /// 147 ///This class does nothing, but it can serve as a skeleton when 148 ///implementing an interface to new solvers. 149 141 /// This class implements an interface for a skeleton LP solver. 150 142 ///\ingroup lp_group 151 class LpSkeleton : public LpSolver, public SkeletonSolverBase{143 class LpSkeleton : public SkeletonSolverBase, public LpSolver { 152 144 public: 153 ///\e 154 LpSkeleton() : LpSolver(), SkeletonSolverBase() {} 155 ///\e 156 virtual LpSkeleton* newSolver() const; 157 ///\e 158 virtual LpSkeleton* cloneSolver() const; 145 LpSkeleton() : SkeletonSolverBase(), LpSolver() {} 146 159 147 protected: 160 148 … … 186 174 187 175 ///\e 176 virtual LpSkeleton* _newSolver() const; 177 ///\e 178 virtual LpSkeleton* _cloneSolver() const; 179 ///\e 188 180 virtual const char* _solverName() const; 189 181 190 182 }; 191 183 192 /// \brief Skeleton class for a MIP solver interface184 /// \brief Interface for a skeleton MIP solver 193 185 /// 194 ///This class does nothing, but it can serve as a skeleton when 195 ///implementing an interface to new solvers. 186 /// This class implements an interface for a skeleton MIP solver. 196 187 ///\ingroup lp_group 197 class MipSkeleton : public MipSolver, public SkeletonSolverBase{188 class MipSkeleton : public SkeletonSolverBase, public MipSolver { 198 189 public: 199 ///\e 200 MipSkeleton() : MipSolver(), SkeletonSolverBase() {} 201 ///\e 202 virtual MipSkeleton* newSolver() const; 203 ///\e 204 virtual MipSkeleton* cloneSolver() const; 190 MipSkeleton() : SkeletonSolverBase(), MipSolver() {} 205 191 206 192 protected: 207 193 ///\e 194 195 ///\bug Wrong interface 196 /// 208 197 virtual SolveExitStatus _solve(); 209 198 210 199 ///\e 200 201 ///\bug Wrong interface 202 /// 211 203 virtual Value _getSol(int i) const; 212 204 213 205 ///\e 206 207 ///\bug Wrong interface 208 /// 214 209 virtual Value _getSolValue() const; 215 210 216 211 ///\e 212 213 ///\bug Wrong interface 214 /// 217 215 virtual ProblemType _getType() const; 218 216 219 217 ///\e 218 virtual MipSkeleton* _newSolver() const; 219 220 ///\e 221 virtual MipSkeleton* _cloneSolver() const; 222 ///\e 220 223 virtual const char* _solverName() const; 224 221 225 }; 222 226 223 227 } //namespace lemon 224 228 225 #endif 229 #endif // LEMON_LP_SKELETON
Note: See TracChangeset
for help on using the changeset viewer.