18#ifndef __DEPTH2KIN_NLP_H__ 
   19#define __DEPTH2KIN_NLP_H__ 
   24#include <yarp/sig/all.h> 
   26#include <IpIpoptApplication.hpp> 
   28#define ALIGN_IPOPT_MAX_ITER    300 
   32yarp::sig::Matrix 
computeH(
const yarp::sig::Vector &
x);
 
   39    yarp::sig::Vector 
min;
 
   40    yarp::sig::Vector 
max;
 
   42    yarp::sig::Matrix 
Prj;
 
   44    std::deque<yarp::sig::Vector> 
p2d;
 
   45    std::deque<yarp::sig::Vector> 
p3d;
 
   53    void setBounds(
const yarp::sig::Vector &
min, 
const yarp::sig::Vector &
max);
 
   54    bool addPoints(
const yarp::sig::Vector &p2di, 
const yarp::sig::Vector &p3di);
 
   59                   const int print_level=0, 
const std::string &derivative_test=
"none");
 
 
bool setInitialGuess(const yarp::sig::Matrix &H)
 
std::deque< yarp::sig::Vector > p3d
 
size_t getNumPoints() const
 
void setBounds(const yarp::sig::Vector &min, const yarp::sig::Vector &max)
 
double evalError(const yarp::sig::Matrix &H)
 
bool calibrate(yarp::sig::Matrix &H, double &error, const int max_iter=ALIGN_IPOPT_MAX_ITER, const int print_level=0, const std::string &derivative_test="none")
 
bool addPoints(const yarp::sig::Vector &p2di, const yarp::sig::Vector &p3di)
 
bool setProjection(const yarp::sig::Matrix &Prj)
 
std::deque< yarp::sig::Vector > p2d
 
yarp::sig::Matrix getProjection() const
 
#define ALIGN_IPOPT_MAX_ITER
 
yarp::sig::Matrix computeH(const yarp::sig::Vector &x)