-
Notifications
You must be signed in to change notification settings - Fork 42
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
Cleanup and add Implementation pointer to Animation classes #160
Conversation
Signed-off-by: Luca Della Vedova <[email protected]>
Signed-off-by: Luca Della Vedova <[email protected]>
Codecov Report
@@ Coverage Diff @@
## main #160 +/- ##
==========================================
- Coverage 75.74% 75.71% -0.04%
==========================================
Files 73 73
Lines 10474 10428 -46
==========================================
- Hits 7934 7896 -38
+ Misses 2540 2532 -8
Continue to review full report at Codecov.
|
I ticketed #161 to keep track of that. CI is all green right now because it's skipping the
|
@osrf-jenkins run tests again, thanks! |
The Focal action is a performance test, so I think we're okay there. The Windows failures are AV related, which I also believe are expected The MacOS failure is a bit suspicious, |
Signed-off-by: Michael Carroll <[email protected]>
248f4d7
to
2685e79
Compare
Signed-off-by: Michael Carroll <[email protected]>
Signed-off-by: Michael Carroll <[email protected]>
@osrf-jenkins retest this please |
Note! This PR introduces a dependency on ign-utils1 for the implementation pointer.
There was a static map hack added in ign-common3 to add a member variable to the
Animation
class that didn't have an implementation pointer.This PR removes the hack, as well as adding an implementation pointer to all the classes in the file and doing some scattered cleanups mainly:
PoseAnimation
andNumericAnimation
had the same code with the only difference being the type I thought it might be good to remove the duplicated code and create anAnimation
templated function.PoseAnimation
orAnimation
and they all had raw pointer member variables that were deleted on destruction. If there happened to be a copy created and destructed, the memory would be freed and the original wouldn't be able to access it anymore.Also I removed a few
const
from functions that were changing the state likeBuildInterpolationSplines()
. They were able to "get away with it" since there is a lot of mutable member variables but I can revert that if it's not a great idea.Finally, I'm tempted to remove all the unit tests for copy / copy assignment / move operators for
TrajectoryInfo
since they are now just the default ones and they should be tested by the ImplPtr tests.