Public Types | Public Member Functions | Protected Attributes

OpenTissue::mbd::JointInterface< mbd_types > Class Template Reference

#include <mbd_joint_interface.h>

Inheritance diagram for OpenTissue::mbd::JointInterface< mbd_types >:
OpenTissue::mbd::BallJoint< mbd_types > OpenTissue::mbd::HingeJoint< mbd_types > OpenTissue::mbd::SliderJoint< mbd_types > OpenTissue::mbd::UniversalJoint< mbd_types > OpenTissue::mbd::WheelJoint< mbd_types >

List of all members.

Public Types

typedef mbd_types::socket_type socket_type

Public Member Functions

 JointInterface ()
virtual ~JointInterface ()
socket_typeget_socket_A ()
socket_typeget_socket_B ()
socket_type const * get_socket_A () const
socket_type const * get_socket_B () const
void connect (socket_type const &socketA, socket_type const &socketB)
void disconnect ()
virtual void calibration ()=0
void clear ()

Protected Attributes

socket_typem_socketA
socket_typem_socketB

Detailed Description

template<typename mbd_types>
class OpenTissue::mbd::JointInterface< mbd_types >

joint_type Class.

Not all joints, limits and motors are compatible, so a type check must be performed when attaching a limit or motor to a joint to ensure that the modelling is consistent.


Member Typedef Documentation

template<typename mbd_types >
typedef mbd_types::socket_type OpenTissue::mbd::JointInterface< mbd_types >::socket_type

Constructor & Destructor Documentation

template<typename mbd_types >
OpenTissue::mbd::JointInterface< mbd_types >::JointInterface (  )  [inline]
template<typename mbd_types >
virtual OpenTissue::mbd::JointInterface< mbd_types >::~JointInterface (  )  [inline, virtual]

Member Function Documentation

template<typename mbd_types >
virtual void OpenTissue::mbd::JointInterface< mbd_types >::calibration (  )  [pure virtual]

joint_type Calibration Routine. This method is invoked implicitly whenever the joint connectivity is changed (alteration of anchor points or joint axes).

It can also be invoked directly by and end user if the incident body position and/or rotations is changed.

Implemented in OpenTissue::mbd::BallJoint< mbd_types >, OpenTissue::mbd::HingeJoint< mbd_types >, OpenTissue::mbd::SliderJoint< mbd_types >, OpenTissue::mbd::UniversalJoint< mbd_types >, and OpenTissue::mbd::WheelJoint< mbd_types >.

template<typename mbd_types >
void OpenTissue::mbd::JointInterface< mbd_types >::clear (  )  [inline]
template<typename mbd_types >
void OpenTissue::mbd::JointInterface< mbd_types >::connect ( socket_type const &  socketA,
socket_type const &  socketB 
) [inline]
template<typename mbd_types >
void OpenTissue::mbd::JointInterface< mbd_types >::disconnect (  )  [inline]
template<typename mbd_types >
socket_type* OpenTissue::mbd::JointInterface< mbd_types >::get_socket_A (  )  [inline]
template<typename mbd_types >
socket_type const* OpenTissue::mbd::JointInterface< mbd_types >::get_socket_A (  )  const [inline]
template<typename mbd_types >
socket_type const* OpenTissue::mbd::JointInterface< mbd_types >::get_socket_B (  )  const [inline]
template<typename mbd_types >
socket_type* OpenTissue::mbd::JointInterface< mbd_types >::get_socket_B (  )  [inline]

Member Data Documentation

template<typename mbd_types >
socket_type* OpenTissue::mbd::JointInterface< mbd_types >::m_socketA [protected]
template<typename mbd_types >
socket_type* OpenTissue::mbd::JointInterface< mbd_types >::m_socketB [protected]

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