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

[mc_rtc/Configuration] Improvements for Schema introduction #393

Merged
merged 8 commits into from
Sep 12, 2023

Conversation

gergondet
Copy link
Member

This PR introduces changes to mc_rtc::Configuration that will be used in a subsequent PR that introduces a schema-like structure builder to mc_rtc. It is the first of three PRs leading to mc_rtc::Schema introduction

The following features have been added:

  • Support for loading/saving std::variant
  • Support for intrusive methods for user-defined load/save operations (in addition to the existing and non-intrusive approach)
  • Add Configuration::find(key), Configuration(key, others...) and Configuration.find<T>(keys, others...)

I started to refactor the use Configuration::has (e.g. replace the very common usage of if(cfg.has("foo")) { foo = cfg("foo"); do_something(foo); } with if(auto foo = cfg.find("foo")) { do_something(foo); } but many of these instances will be better served by introducing Schema-like structures so I'll wait for this PR to come

@gergondet gergondet force-pushed the topic/ConfigurationForSchema branch from be0641e to d32acb7 Compare September 12, 2023 11:46
@gergondet gergondet merged commit c7274c9 into jrl-umi3218:master Sep 12, 2023
gergondet added a commit that referenced this pull request Sep 19, 2023
Added
---

- [mc_control] Added motor status to joint sensor (#395)
- [mc_control/FSM] Posture tasks' reset can be disabled (#389)
- [mc_rtc/Configuration] Added support for `std::variant` (#393)
- [mc_rtc/Configuration] Added `Configuration::find` (#393)
- [mc_rtc/GUI] Added form elements to provide more complex forms (#394)

Changes
---

- [mc_control/FSM] FSM embedded in a Meta state no longer reset the posture at transition by default (#389)

Fixes
---

- [mc_observers] KinematicInertial uses the correct function from state-observation (#391)
- [mc_solver] Fix a crash in monitor activation
- [mc_tvm] Correctly include refAccel in Orientation|PositionFunction
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

Successfully merging this pull request may close these issues.

1 participant