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

Invalid actuator and joint TiXmlElement pointers #112

Closed
adolfo-rt opened this issue Aug 27, 2013 · 2 comments
Closed

Invalid actuator and joint TiXmlElement pointers #112

adolfo-rt opened this issue Aug 27, 2013 · 2 comments
Assignees
Labels

Comments

@adolfo-rt
Copy link
Member

The JointInfo and ActuatorInfo structs contain TiXmlElement* instances to transmission-specific configuration. The current parser implementation has the issue that these pointers are only valid during the lifetime of the associated TiXmlDocument instance, which goes out of scope when parse(...) returns. This means that we basically can't use this pointers.

Two solutions come to mind:

  • Make the parser stateful and store a TiXmlDocument instance. In this case pointers will only be valid as long as the parser is alive.
  • Store strings instead of pointers with the contents of the TiXmlElement. The parser remains stateless, and the transmission plugins would only have to convert this string to a TinyXml data structure.

I prefer the second option, and will be implementing it.

@davetcoleman

@ghost ghost assigned adolfo-rt Aug 27, 2013
adolfo-rt pushed a commit to pal-robotics-forks/ros_control that referenced this issue Sep 2, 2013
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
@davetcoleman
Copy link
Member

Ah, I never actually used those pointers so missed that bug! Feel free to change whatever is needed in those structs - my attention has turned back to grad school projects :)

adolfo-rt pushed a commit to pal-robotics-forks/ros_control that referenced this issue Jan 8, 2014
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
adolfo-rt pushed a commit to pal-robotics-forks/ros_control that referenced this issue Apr 16, 2014
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
@adolfo-rt
Copy link
Member Author

Proposed solution has been merged. Closing.

bmagyar pushed a commit to pal-robotics-forks/ros_control that referenced this issue Dec 2, 2019
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
bmagyar pushed a commit to pal-robotics-forks/ros_control that referenced this issue Dec 7, 2019
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
bmagyar pushed a commit to pal-robotics-forks/ros_control that referenced this issue Dec 7, 2019
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
bmagyar pushed a commit to pal-robotics-forks/ros_control that referenced this issue Dec 12, 2019
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
bmagyar pushed a commit to pal-robotics-forks/ros_control that referenced this issue Dec 27, 2019
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
bmagyar pushed a commit to pal-robotics-forks/ros_control that referenced this issue Dec 30, 2019
- Allow to specify multiple hardware interfaces for joints and actuators.

- Fix invalid xml_element tag. Contents are now stored as a string.

- Unit test parser.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants