int getNumSolutions() const { \
(ref).getNumSolutions(); \
} \
int getMaxNumSolutions() const { \
return (ref).getMaxNumSolutions(); \
} \
void setMaxNumSolutions(int num) { \
(ref).setMaxNumSolutions(num); \
} \
bool hasSolution() const { \
return (ref).hasSolution(); \
} \
std::pair<const AlpsSolution*, double> getBestSolution() const { \
return (ref).getBestSolution(); \
} \
void getAllSolutions \
(std::vector<std::pair<const AlpsSolution*, double> >& sols) { \
return (ref).getAllSolutions(sols); \
} \
void addSolution(
const AlpsSolution* sol,
double priority) { \
(ref).addSolution(sol, priority); \
}