Framework Integration¶
ROS Integration¶
Potential Strategies and Ideas¶
- (Generic) Runtime Bridge with dynamic translation
- Transport-level Integration
- {TCP,UDP}ROS Connectors for RSB components
- RSB Transport for ROS
ROS Client API with RSB backend
- Naming maintains features sets (which component understands what on which framework)
Integration Challenges and Experiences¶
IDL and Serialization
- Non-standard, but de-facto standard of its own
- Informal description of IDL is available
- But no grammar
- No standalone tools for using the IDL
- Parsing and code generation are completely entangled in ROS framework code
Component Implementation
- XMLRPC nameserver protocol must be implemented by hand
- Complicated, mandatory state management (subscriber links)
YARP Integration¶
Strategies and Ideas¶
Bottle Serialization Mechanism
- Deserialize into generic
Bottle
protocol buffers
- Deserialize into port-specific, compatible protocol buffer objects
- Guess port-specific layout and automatically generate compatible protocol buffer descriptor
Integration Challenges and Experiences¶
- Bottle serialization is reasonably documented and implemented
- But: nightmarish communication protocol