-
Notifications
You must be signed in to change notification settings - Fork 261
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
Refactor plugin query mechanism and standardize trait management #833
Refactor plugin query mechanism and standardize trait management #833
Conversation
ca3f289
to
b507ade
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed off-ticket, get_class_plugins
interface requires a bit too much extra knowledge to use, let's investigate if we can get it to a usage like get_class_plugins<SomeBaseInterface>();
d515acd
to
49fd9dc
Compare
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
…gins Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
…ethod (ros2#814) Signed-off-by: Michael Orlov <[email protected]> Signed-off-by: Cameron Miller <[email protected]>
…queue() (ros2#832) Signed-off-by: Michael Orlov <[email protected]> Signed-off-by: Cameron Miller <[email protected]>
* For the `ros2 bag record` CLI - don't hardcode available choices, instead query for what is installed Signed-off-by: Cameron Miller <[email protected]>
* Create design proposal for snapshot feature Co-authored-by: Cameron Miller <[email protected]> Signed-off-by: Cameron Miller <[email protected]>
- has_next() - calls recursively until next message OR no next file found - read_next() - calls has_next() to ensure necessary rollovers are made Signed-off-by: Sonia Jin <[email protected]> Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
49fd9dc
to
ccce390
Compare
Signed-off-by: Cameron Miller <[email protected]>
Should be good to go now |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking much better - I like the new plugin query interface.
Noted a few things to address - for the includes and docstrings make sure to take a sweep across the whole diff, I only marked a few instances.
rosbag2_cpp/include/rosbag2_cpp/converter_interfaces/serialization_format_deserializer.hpp
Outdated
Show resolved
Hide resolved
rosbag2_storage/include/rosbag2_storage/storage_interfaces/read_only_interface.hpp
Outdated
Show resolved
Hide resolved
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
Signed-off-by: Cameron Miller <[email protected]>
…2#833) * Refactor plugin query mechanism and standardize trait management * Adds utility function to query all installed plugins for a given plugin interface class, and uses that in rosbag2_py to present options for recording and listing Signed-off-by: Cameron Miller <[email protected]> Signed-off-by: Wojciech Jaworski <[email protected]>
Refactored duplicated code for querying available plugins by adding a shared template function in a new
rosbag2_py
utils filepy_utils.hpp
.Removed all plugin query code from individual Factory classes to consolidate it within
rosbag2_py
.Standardized trait management between
StorageTraits
,ConverterTraits
, andCompressionTraits
.