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

Use plugin architecture for loading the backends #105

Open
francocipollone opened this issue Feb 15, 2022 · 3 comments
Open

Use plugin architecture for loading the backends #105

francocipollone opened this issue Feb 15, 2022 · 3 comments

Comments

@francocipollone
Copy link
Collaborator

francocipollone commented Feb 15, 2022

Summary

Maliput provides a plugin architecture for loading RoadNetworks using different backends.

Victory Condition

Remove build dependency on maliput_dragway, maliput_multilane and maliput_maldirive and load them as a plugin.

Examples

It is already being used in delphyne. See and maliput_viz

@francocipollone
Copy link
Collaborator Author

This will require removing the particular gflags for each maliput backend. As they are loaded in runtime, any user should be able to use their own maliput backend implementation.

For loading the parameters we could pass a yaml, similarly to what we do with the maliput_viz package:

  * YAML file configuration:
     The --yaml_file_path flag expects a valid path to a YAML file.
     The YAML file should contain the configuration for loading the road network.
     The structure of the YAML file should be:
      |  maliput_viz:
      |    maliput_backend: <backend_name>
      |    parameters:
      |       <key_1>: <value_1>
      |       <key_2>: <value_2>
      |       ...
      |       <key_N>: <value_N>

wdyt? @agalbachicar

@francocipollone francocipollone removed the good first issue Good for newcomers label Dec 23, 2022
@agalbachicar
Copy link
Collaborator

Remove build dependency on maliput_dragway, maliput_multilane and maliput_maldirive and load them as a plugin.

I think we should have examples that show how to avoid the plugin infrastructure as well.

@agalbachicar
Copy link
Collaborator

For loading the parameters we could pass a yaml, similarly to what we do with the maliput_viz package:

I am OK with this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 📋 ToDo
Development

No branches or pull requests

2 participants