ocra-recipes
Doxygen documentation for the ocra-recipes repository
|
ModelContacts class. More...
#include <ModelContacts.h>
Classes | |
struct | Pimpl |
Public Member Functions | |
ModelContacts (Model &model) | |
~ModelContacts () | |
ModelContacts & | addContactPoint (Variable &f, const Feature &contactFeature) |
ModelContacts & | removeContactPoint (Variable &f) |
void | removeAllContacts () |
Variable & | getContactForcesVariable () const |
const Eigen::MatrixXd & | getJct () const |
int | nbContactPoints () const |
std::pair< const Variable *, const Feature * > | getContactPoint (int index) const |
const Variable & | getContactForceVariable (int index) const |
const Feature & | getContactFeature (int index) const |
const Model & | getModel () const |
Public Member Functions inherited from ocra::ObserverSubject | |
ObserverSubject () | |
virtual | ~ObserverSubject () |
Public Member Functions inherited from ocra::Observer | |
virtual | ~Observer () |
template<int EVT> | |
void | bind (SubjectBase< EVT > &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
template<int EVT> | |
void | stopPropagation () |
Public Member Functions inherited from ocra::ObserverBase< EVT_RESIZE > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
void | bind (subject_type &subject) |
Call this method to automatically propagate observed events to observers connected to the subject given in argument. More... | |
Public Member Functions inherited from ocra::Subject | |
virtual | ~Subject () |
template<int EVT, class Derived , class Base > | |
void | connect (Derived &object, void(Base::*newCallback)(int)) const |
Call this method to register a non-static method as a callback. More... | |
template<int EVT> | |
void | connect (void(*newCallback)(int)) const |
Call this method to register a free function as a callback. More... | |
template<int EVT, class Derived , class Base > | |
void | disconnect (Derived &object, void(Base::*callbackToErase)(int)) const |
Disconnect non-static method. More... | |
template<int EVT> | |
void | disconnect (void(*callbackToErase)(int)) const |
Disconnect free function. More... | |
template<int EVT> | |
void | propagate () const |
template<int EVT> | |
void | propagate (int timestamp) const |
Public Member Functions inherited from ocra::SubjectBase< EVT_RESIZE > | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
Public Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_DEPENDENCIES > | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
Public Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_VALUE > | |
void | connect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type newCallback) const |
Call this method to register a non-static method as a callback. More... | |
void | connect (typename SubjectBaseTraits< EVT, void >::callback_type newCallback) const |
Call this method to register a free function as a callback. More... | |
void | disconnect (T &object, typename SubjectBaseTraits< EVT, T >::callback_type callback) const |
Disconnect non-static method. More... | |
void | disconnect (typename SubjectBaseTraits< EVT, void >::callback_type callbackToErase) const |
Disconnect free function. More... | |
void | propagate (int timestamp) const |
void | propagate () const |
Additional Inherited Members | |
Protected Types inherited from ocra::ObserverBase< EVT_RESIZE > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Types inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Types inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
typedef SubjectBase< EVT > | subject_type |
typedef InvokerBase< EVT > | invoker_type |
Protected Member Functions inherited from ocra::ObserverBase< EVT_RESIZE > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_DEPENDENCIES > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::ObserverBase< EVT_CHANGE_VALUE > | |
void | stopPropagation () |
Call this method from your callbacks to avoid propagation to the bound subject (if any). More... | |
ObserverBase () | |
~ObserverBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_RESIZE > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_DEPENDENCIES > | |
SubjectBase () | |
~SubjectBase () | |
Protected Member Functions inherited from ocra::SubjectBase< EVT_CHANGE_VALUE > | |
SubjectBase () | |
~SubjectBase () | |
ModelContacts class.
Concatenates the contact variables and jacobians for a model. This class is not necessary to handle contacts, but an be useful if a component of your controller handles all contact points as a whole. For instance, Task objects will generally manipulate forces independently. But if you need to use a DynamicEquationFunction in your control, then you have to update the ModelContacts of your Model so that they are included in the dynamic equation of your model.
NB: the forces considered here are applied by the manikin on the environment.
TODO: review update mechanism.
Definition at line 52 of file ModelContacts.h.
ocra::ModelContacts::ModelContacts | ( | Model & | model | ) |
Definition at line 28 of file ModelContacts.cpp.
ocra::ModelContacts::~ModelContacts | ( | ) |
Definition at line 34 of file ModelContacts.cpp.
ModelContacts & ocra::ModelContacts::addContactPoint | ( | Variable & | f, |
const Feature & | contactFeature | ||
) |
Definition at line 39 of file ModelContacts.cpp.
const Feature & ocra::ModelContacts::getContactFeature | ( | int | index | ) | const |
Definition at line 121 of file ModelContacts.cpp.
Variable & ocra::ModelContacts::getContactForcesVariable | ( | ) | const |
Definition at line 88 of file ModelContacts.cpp.
const Variable & ocra::ModelContacts::getContactForceVariable | ( | int | index | ) | const |
Definition at line 116 of file ModelContacts.cpp.
std::pair< const Variable *, const Feature * > ocra::ModelContacts::getContactPoint | ( | int | index | ) | const |
Definition at line 111 of file ModelContacts.cpp.
const MatrixXd & ocra::ModelContacts::getJct | ( | ) | const |
Definition at line 93 of file ModelContacts.cpp.
const Model & ocra::ModelContacts::getModel | ( | ) | const |
Definition at line 126 of file ModelContacts.cpp.
int ocra::ModelContacts::nbContactPoints | ( | ) | const |
Definition at line 106 of file ModelContacts.cpp.
void ocra::ModelContacts::removeAllContacts | ( | ) |
Definition at line 76 of file ModelContacts.cpp.
ModelContacts & ocra::ModelContacts::removeContactPoint | ( | Variable & | f | ) |
Definition at line 60 of file ModelContacts.cpp.