hpp-corbaserver  6.0.0
Corba server for Humanoid Path Planner applications
_constraints.idl
Go to the documentation of this file.
1 // Copyright (C) 2019 by Joseph Mirabel, LAAS-CNRS.
2 //
3 // This file is part of the hpp-corbaserver.
4 //
5 // This software is provided "as is" without warranty of any kind,
6 // either expressed or implied, including but not limited to the
7 // implied warranties of fitness for a particular purpose.
8 //
9 // See the COPYING file for more information.
10 
11 #ifndef HPP_CORE_CONSTRAINTS_IDL
12 #define HPP_CORE_CONSTRAINTS_IDL
13 #include <hpp/common.idl>
14 
16 
17 module hpp
18 {
19  module constraints_idl {
20  interface Implicit;
21  typedef sequence <Implicit> Implicits;
22  };
23 
24  module core_idl {
25 
26  interface Constraint
27  {
29 
30  boolean apply (inout floatSeq config) raises (Error);
31 
32  string name () raises (Error);
33  string str () raises (Error);
34  boolean isSatisfied (in floatSeq config) raises (Error);
35 
36  Constraint copy() raises (Error);
37  }; // interface Constraint
38 
40  {
41  void setRightHandSideFromConfig (in floatSeq config) raises (Error);
42  //-> rightHandSideFromConfig
44  //-> rightHandSideFromConfig
45  void setRightHandSide (in floatSeq param) raises (Error);
46  //-> rightHandSide
48  //-> rightHandSide
50  //-> rightHandSide
51  void setRightHandSideAt (in value_type s) raises (Error);
52  //-> rightHandSideAt
53  boolean isConstraintSatisfied (in constraints_idl::Implicit nm,
54  in floatSeq arg, out floatSeq err,
55  out boolean constraintFound) raises (Error);
56  //* hpp::core::vector_t _arg = hpp::corbaServer::floatSeqToVector (arg);
57  //* hpp::constraints::ImplicitPtr_t _nm = hpp::corbaServer::reference_to_servant_base<hpp::constraints::Implicit>(server_, nm)->get();
58  //* hpp::core::vector_t errorOut (_nm->function ().outputSpace ()->nv ());
59  //* bool res = getT ()->solver ().isConstraintSatisfied
60  //* (_nm, _arg,errorOut, constraintFound);
61  //* err = hpp::corbaServer::vectorToFloatSeq (errorOut);
62  //* return res;
63 
64  constraints_idl::Implicits numericalConstraints() raises(Error);
65 
66  boolean add (in constraints_idl::Implicit numconstraint, in unsigned long priority);
67 
68  void setLastIsOptional (in boolean optional);
69  //-> lastIsOptional
70 
71  boolean getLastIsOptional ();
72  //-> lastIsOptional
73 
74  void setErrorThreshold (in value_type threshold) raises(Error);
75  //-> errorThreshold
76  value_type getErrorThreshold () raises(Error);
77  //-> errorThreshold
78  }; // interface ConfigProjector
79 
81  {
86  //-> configProjector
87 
88  void addConstraint(in Constraint a_constraint) raises (Error);
89  }; // interface ConstraintSet
90 
91  }; // module core
92 }; // module hpp
93 //* #include <hpp/core/constraint.hh>
94 //* #include <hpp/core/constraint-set.hh>
95 //* #include <hpp/core/config-projector.hh>
96 //* #include <hpp/constraints_idl/constraints.hh>
97 //* #include <hpp/constraints/solver/by-substitution.hh>
98 
99 #endif // HPP_CORE_CONSTRAINTS_IDL
Definition: constraints-idl.hh:223
Definition: _constraints-idl.hh:99
Definition: common-idl.hh:689
#define HPP_EXPOSE_MEMORY_DEALLOCATION(ErrorType)
Definition: common.idl:14
Corba exception travelling through the Corba channel.
Definition: common.idl:27
Definition: constraints.idl:41
Definition: _constraints.idl:40
void setRightHandSide(in floatSeq param)
void setRightHandSideFromConfig(in floatSeq config)
void setRightHandSideOfConstraintFromConfig(in constraints_idl::Implicit nm, in floatSeq config)
void setRightHandSideOfConstraint(in constraints_idl::Implicit nm, in floatSeq rhs)
Definition: _constraints.idl:81
Definition: _constraints.idl:27
sequence< Implicit > Implicits
Definition: _constraints.idl:20
Implement CORBA interface `‘Obstacle’'.
Definition: client.hh:46
double value_type
Definition: common.idl:18