9 bool explicitlyTimeDependant,
bool separableTimeDependancy)
11 , _convexityProperty(convexity)
12 , _continuityProperty(continuity)
13 , _timeDependant(explicitlyTimeDependant)
14 , _separableTimeDependancy(separableTimeDependancy)
27 return _convexityProperty;
32 return _continuityProperty;
42 _convexityProperty = newProperty;
48 _continuityProperty = newProperty;
53 std::vector<std::string>::iterator it = std::find(_properties.begin(), _properties.end(), functionProperty);
54 if (it == _properties.end())
55 _properties.push_back(functionProperty);
60 std::vector<std::string>::iterator it = std::find(_properties.begin(), _properties.end(), functionProperty);
61 if (it != _properties.end())
62 _properties.erase(it);
64 ocra_assert(std::find(_properties.begin(), _properties.end(), functionProperty) == _properties.end());
69 return _properties[i];
74 return (
int)_properties.size();
79 std::vector<std::string>::const_iterator it = std::find(_properties.begin(), _properties.end(), functionProperty);
80 return (it != _properties.end());
85 return _timeDependant;
90 return !_timeDependant || _separableTimeDependancy;
100 _separableTimeDependancy = b;
void addProperty(const std::string &functionProperty)
eFunctionConvexity getConvexityProperty(void) const
const std::string & getProperty(int i) const
void removeProperty(const std::string &functionProperty)
int getContinuityProperty(void) const
void changeType(eFunctionLinearity newType)
IFunctionProperties(eFunctionLinearity linearity=LINEARITY_UNDEFINED, eFunctionConvexity convexity=CONVEXITY_UNDEFINED, int continuity=CONTINUITY_UNKNOWN, bool explicitlyTimeDependant=false, bool separableTimeDependancy=true)
IFunctionProperties Constructor.
bool hasProperty(const std::string &functionProperty) const
void changeSeparableTimeDependancy(bool b)
Optimization-based Robot Controller namespace. a library of classes to write and solve optimization p...
int getNumberOfProperties(void) const
bool hasSeparableTimeDependancy(void) const
eFunctionLinearity getType(void) const
bool isExplicitlyTimeDependant(void) const
void changeExplicitTimeDependancy(bool b)
void changeConvexityProperty(eFunctionConvexity newProperty)
#define ocra_assert(ocra_expression)
void changeContinuityProperty(int newProperty)