ocra-recipes
Doxygen documentation for the ocra-recipes repository
Classes | Public Member Functions | List of all members
ocra::ModelContacts Class Reference

ModelContacts class. More...

#include <ModelContacts.h>

Inheritance diagram for ocra::ModelContacts:
[legend]
Collaboration diagram for ocra::ModelContacts:
[legend]

Classes

struct  Pimpl
 

Public Member Functions

 ModelContacts (Model &model)
 
 ~ModelContacts ()
 
ModelContactsaddContactPoint (Variable &f, const Feature &contactFeature)
 
ModelContactsremoveContactPoint (Variable &f)
 
void removeAllContacts ()
 
VariablegetContactForcesVariable () const
 
const Eigen::MatrixXd & getJct () const
 
int nbContactPoints () const
 
std::pair< const Variable *, const Feature * > getContactPoint (int index) const
 
const VariablegetContactForceVariable (int index) const
 
const FeaturegetContactFeature (int index) const
 
const ModelgetModel () 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 ()
 

Detailed Description

ModelContacts class.

Warning
None

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.

Constructor & Destructor Documentation

ocra::ModelContacts::ModelContacts ( Model model)

Definition at line 28 of file ModelContacts.cpp.

ocra::ModelContacts::~ModelContacts ( )

Definition at line 34 of file ModelContacts.cpp.

Member Function Documentation

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.


The documentation for this class was generated from the following files: