00001 00028 #ifndef _CONSTRAINT_H_ 00029 #define _CONSTRAINT_H_ 00030 00031 #include <walking-client/utils.h> 00032 #include <Eigen/Core> 00033 #include "unsupported/Eigen/MatrixFunctions" 00034 #include <ocra/util/ErrorsHelper.h> 00035 #include <memory> 00036 00037 class Constraint { 00038 public: 00039 Constraint() { } 00040 void init() { buildMatrixCi(); buildMatrixCii(); buildVectord(); }; 00041 Eigen::MatrixXd getCi() { return _Ci; }; 00042 Eigen::MatrixXd getCii() { return _Cii; }; 00043 Eigen::VectorXd getd(){ return _d; }; 00044 protected: 00045 Eigen::MatrixXd _Ci; 00046 Eigen::MatrixXd _Cii; 00047 Eigen::VectorXd _d; 00048 protected: 00049 virtual void buildMatrixCi(){ OCRA_WARNING("Method not implemented yet") }; 00050 virtual void buildMatrixCii(){ OCRA_WARNING("Method not implemented yet") }; 00051 virtual void buildVectord(){ OCRA_WARNING("Method not implemented yet") }; 00052 }; 00053 00054 #endif