17 #ifndef __tsid_python_constriant_inequality_hpp__ 
   18 #define __tsid_python_constriant_inequality_hpp__ 
   26 namespace bp = boost::python;
 
   28 template <
typename Constra
intInequality>
 
   30     : 
public boost::python::def_visitor<
 
   31           ConstraintIneqPythonVisitor<ConstraintInequality> > {
 
   32   template <
class PyClass>
 
   35     cl.def(bp::init<std::string>((bp::arg(
"name")),
 
   36                                  "Default constructor with name."))
 
   37         .def(bp::init<std::string, unsigned int, unsigned int>(
 
   38             (bp::arg(
"name"), bp::arg(
"row"), bp::arg(
"col")),
 
   39             "Default constructor with name and size."))
 
   40         .def(bp::init<std::string, Eigen::MatrixXd, Eigen::VectorXd,
 
   42             (bp::arg(
"name"), bp::arg(
"A"), bp::arg(
"lb"), bp::arg(
"ub")),
 
   43             "Default constructor with name and constraint."))
 
   45         .add_property(
"rows", &ConstraintInequality::rows)
 
   46         .add_property(
"cols", &ConstraintInequality::cols)
 
   47         .def(
"resize", &ConstraintInequality::resize,
 
   48              (bp::arg(
"r"), bp::arg(
"c")), 
"Resize constraint size.")
 
   50         .add_property(
"isEquality", &ConstraintInequality::isEquality)
 
   51         .add_property(
"isInequality", &ConstraintInequality::isInequality)
 
   52         .add_property(
"isBound", &ConstraintInequality::isBound)
 
   60              (
bool (ConstraintInequality::*)(
 
   62                      const Eigen::MatrixXd>))&ConstraintInequality::setMatrix,
 
   63              bp::args(
"matrix"), 
"Set Matrix")
 
   65              (
bool (ConstraintInequality::*)(
 
   67                      const Eigen::VectorXd>))&ConstraintInequality::setVector,
 
   68              bp::args(
"vector"), 
"Set Vector")
 
   71             (
bool (ConstraintInequality::*)(
 
   72                 const Eigen::Ref<const Eigen::VectorXd>))&ConstraintInequality::
 
   74             bp::args(
"lb"), 
"Set LowerBound")
 
   77             (
bool (ConstraintInequality::*)(
 
   78                 const Eigen::Ref<const Eigen::VectorXd>))&ConstraintInequality::
 
   80             bp::args(
"ub"), 
"Set UpperBound");
 
   82   static Eigen::MatrixXd 
matrix(
const ConstraintInequality& 
self) {
 
   85   static Eigen::VectorXd 
vector(
const ConstraintInequality& 
self) {
 
   88   static Eigen::VectorXd 
lowerBound(
const ConstraintInequality& 
self) {
 
   89     return self.lowerBound();
 
   91   static Eigen::VectorXd 
upperBound(
const ConstraintInequality& 
self) {
 
   92     return self.upperBound();
 
   95   static void expose(
const std::string& class_name) {
 
   96     std::string doc = 
"Constraint Inequality info.";
 
   97     bp::class_<ConstraintInequality>(class_name.c_str(), doc.c_str(),
 
Definition: constraint-bound.hpp:25
 
Definition: constraint-inequality.hpp:31
 
static Eigen::MatrixXd matrix(const ConstraintInequality &self)
Definition: constraint-inequality.hpp:82
 
static Eigen::VectorXd upperBound(const ConstraintInequality &self)
Definition: constraint-inequality.hpp:91
 
static Eigen::VectorXd vector(const ConstraintInequality &self)
Definition: constraint-inequality.hpp:85
 
void visit(PyClass &cl) const
Definition: constraint-inequality.hpp:34
 
static Eigen::VectorXd lowerBound(const ConstraintInequality &self)
Definition: constraint-inequality.hpp:88
 
static void expose(const std::string &class_name)
Definition: constraint-inequality.hpp:95