Class LeggedModel

Class Documentation

class LeggedModel

Public Types

using SharedPtr = std::shared_ptr<LeggedModel>

Public Functions

explicit LeggedModel(const std::string &urdfXmlString)
virtual ~LeggedModel() = default
void setEndEffectorNames(const std::vector<std::string> &threeDofContactNames, const std::vector<std::string> &sixDofContactNames)
void setBaseNames(const std::string &baseName)
inline std::string getFrameName(const size_t &frameIndex) const
inline std::string getBaseName() const
std::vector<std::string> getContactNames() const
std::vector<std::string> getJointNames() const
inline const pinocchio::Model &getPinModel() const
inline pinocchio::Data &getPinData()
inline const pinocchio::Data &getPinData() const
inline vector_t &getGeneralizedPosition()
inline vector_t &getGeneralizedVelocity()
inline vector_t &getTorque()
virtual void update()
inline size_t getNumJoints() const
inline size_t getNumThreeDofContacts() const
inline size_t getNumSixDofContacts() const
inline const std::vector<size_t> &getEndEffectorFrameIndices() const
inline size_t getBaseFrameIndex() const
size_t getJointIndex(std::string jointName) const
inline quaternion_t getBaseRotation() const
matrix_t getMassMatrix()
matrix_t getCoriolisMatrix()
matrix_t getGeneralizedGravity()
matrix_t getSelectionMatrix()
matrix_t getContactJacobian()
matrix_t getBaseJacobian()

Protected Attributes

std::shared_ptr<pinocchio::Model> pinModelPtr_
std::unique_ptr<pinocchio::Data> pinDataPtr_
vector_t q_
vector_t v_
vector_t tau_
size_t numThreeDofContacts_ = {}
size_t numSixDofContacts_ = {}
std::vector<size_t> endEffectorFrameIndices_
size_t baseFrameIndex_ = {}
std::unordered_map<std::string, size_t> jointIndexMap_