- U_iterator::value_type -> iterator_traits<U_iterator>:value_type

- various warnings fixed
This commit is contained in:
Bernd Gärtner 2007-03-17 23:18:53 +00:00
parent 34c2a08adf
commit e527fa4c0a
7 changed files with 13 additions and 17 deletions

View File

@ -58,7 +58,7 @@
typedef typename Base::U_iterator U_iterator;\
typedef typename Base::D_iterator D_iterator;\
typedef typename Base::C_iterator C_iterator;\
typedef typename Base::C_entry C_entry;
typedef typename Base::C_entry C_entry
// end QP_MODEL_ITERATOR_TYPES

View File

@ -179,7 +179,7 @@ bool QP_from_mps<IT_, Is_linear_,
return true;
do {
from.get(c);
if (c == '\r' || c == '\n') return true;
if (c == '\r' || c == '\n') break;
if (isspace(c))
whitespaces.push_back(c); // save whitespace
else {

View File

@ -2646,7 +2646,6 @@ multiply__2D_B_OxN_O(Value_iterator out) const
//initialize
std::fill_n( out, B_O.size(), et0);
Index_const_iterator row_it;
Value_iterator out_it;
ET value;

View File

@ -33,14 +33,11 @@ ET QP_solver<Q, ET, Tags>::original_variable_value_under_bounds(int i) const
switch (x_O_v_i[i]) {
case UPPER:
return qp_u[i];
break;
case ZERO:
return et0;
break;
case LOWER:
case FIXED:
return qp_l[i];
break;
case BASIC:
CGAL_qpe_assertion(false);
}
@ -64,17 +61,13 @@ ET QP_solver<Q, ET, Tags>::variable_numerator_value(int i) const
switch (x_O_v_i[i]) {
case QP::UPPER:
return ET(qp_u[i]) * d;
break;
case QP::ZERO:
return et0;
break;
case QP::LOWER:
case QP::FIXED:
return ET(qp_l[i]) * d;
break;
case QP::BASIC:
return x_B_O[in_B[i]];
break;
default: // never reached
return et0;
}

View File

@ -34,7 +34,6 @@ ET QP_solver<Q, ET, Tags>::unbounded_direction_value(int i) const
return direction == 1 ? -d : d;
return et0;
}
return et0;
}
CGAL_END_NAMESPACE

View File

@ -109,7 +109,8 @@ void write_MPS(std::ostream& out,
// output header:
if (number_type.length() == 0) {
const char *tn = QP_from_mps_detail::MPS_type_name
<typename QP::U_iterator::value_type>::name();
<typename
std::iterator_traits<typename QP::U_iterator>::value_type>::name();
if (tn != 0)
out << "* Number-type: " << tn << "\n";
} else

View File

@ -69,9 +69,11 @@ int main(const int argNr,const char **args) {
CGAL::print_quadratic_program (cout, qp);
cout << std::endl;
}
typedef CGAL::Quadratic_program_solution<ET> Solution;
Solution s = CGAL::solve_quadratic_program (qp, ET(0));
typedef CGAL::QP_solver_impl::QP_tags<CGAL::Tag_false,CGAL::Tag_true> Tags;
CGAL::QP_pricing_strategy<QP, ET, Tags> *pricing_strategy =
new CGAL::QP_partial_filtered_pricing<QP, ET, Tags>;
typedef CGAL::QP_solver<QP, ET, Tags> Solver;
Solver s (qp, pricing_strategy, 1);
if (s.is_valid()) {
cout << "Solution is valid." << endl;
@ -87,8 +89,8 @@ int main(const int argNr,const char **args) {
s.solution() << endl;
cout << "Variable values:" << endl;
Solution::Variable_value_iterator it
= s.variable_values_begin() ;
Solver::Variable_value_iterator it
= s.original_variable_values_begin() ;
for (int i=0; i < qp.n(); ++it, ++i)
cout << " " << qp.name_of_variable(i) << " = "
<< CGAL::to_double(*it) << endl;
@ -98,5 +100,7 @@ int main(const int argNr,const char **args) {
cout << "Problem is infeasible." << endl;
else // unbounded
cout << "Problem is unbounded." << endl;
delete pricing_strategy;
return 0;
}