Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Components #34

Closed
traversaro opened this issue May 8, 2015 · 1 comment
Closed

Components #34

traversaro opened this issue May 8, 2015 · 1 comment

Comments

@traversaro
Copy link
Member

With @naveenoid we started refactoring the sensor part of iDynTree, and the "core" part (as discussed in #29 ) is taking form. Hi will try to brainstorm all the different components in which we can structure iDynTree:

Core (currently core-experimental)

This is the component is containing the base classes of iDynTree, as discussed in #29 and #32 ). It was recently introduced to slowly replace the use of KDL structure.
It will contain classes for geometric quantities (Transform, Position, Wrenches, Mass Matrices, etc etc), and eventually data structures describing the robot (KDL::CoDyCo::UndirectedTree).

Sensors

  • Public Dependencies : Core (currently KDL)
  • Namespace: iDynTree::Sensors

This component will contain classes useful for representing and process sensor measurements.

KDL (currently core)

  • Public Dependencies : KDL, Eigen3
  • Namespace: currently KDL::CoDyCo, eventually iDynTree::KDL

This is the old "core" of iDynTree. Data structures here depend heavily on KDL. We will migrate most of them to Core to gain SWIG support. In the meanwhile, we will rely on conversion functions between iDynTree datastructures and KDL provided in iDynTree/KDL/iDynTreeKDLConversions.h . This function will also be useful in the future to maintain a degree of interoperability with

ModelIO

  • Public Dependencies : KDL, urdfdom
  • Namespace: currently kdl_format_io, eventually iDynTree::ModelIO
    This component contains all the logic for loading or saving the model structure (kinematics and dynamics parameters, sensors information) from and to external file formats, most notably URDF.
    This will be probably the component from which migration will be particularly tricky.

YARP

  • Public Dependencies : Core, KDL, Eigen3, YARP (currently also ICUB)
  • Namespace: currently: iCub::iDynTree, eventually iDynTree::yarp

This component is made of all the classes related to YARP interoperability, and also the DynTree legacy class. This component is also providing interoperability between iDynTree classes and YARP classes, useful for YARP modules that use iDynTree for computation and YARP for communication .

ICUB

  • Public Dependencies : Core, KDL, Eigen3, YARP, ICUB

This component (currently not existing) will contain the conversion function between iDynTree classes and classes defined in ICUB libraries (such as skinDynLib).

cc @francesco-romano @nunoguedelha

@traversaro
Copy link
Member Author

The components have been implemented for a long time.

RiccardoGrieco pushed a commit to RiccardoGrieco/idyntree-hde-fork that referenced this issue Apr 14, 2022
urdf files updated and general config files added
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant