Hi, just my 2 cents: From a performance point of view these changes go too far in my opinion. At least the really simple one-liners should stay in the header to allow the compiler to inline them.
Best, Martin Jakob Schwendner schrieb am 09.08.2016 um 10:50: > Hey, > > > > since this is a rather big PR, touching a lot of files, it would be > great if a few people could test this. > > > > Cheers, > > > > Jakob > > > > ---------- Forwarded message ---------- > From: *Dennis Hemker* <[email protected] > <mailto:[email protected]>> > Date: Tue, Aug 9, 2016 at 10:39 AM > Subject: [rock-core/base-types] Splitted base/types to seperate cpp and > hpp files (#94) > To: rock-core/base-types <[email protected] > <mailto:[email protected]>> > > We splitted the base-types header-only lib into a separate .cpp/.hpp > implementation due to very long orogen parsing times. The old > implementation needed about 8 minutes (on a SSD) to finish the orogen > phase in base/orogen/types. With the new concept, an enhancement of > nearly 6 minutes (parsing times around 2 minutes) can be achieved. > Furthermore, we removed some deprecated stuff. > > Split Pose.hpp into implementation and header > > Float.hpp: Use std function, not boost ones > > Eigen: remove isnotnan and isfinite > > This is a duplicate of the buildin > allFinite() > > move guaranteeSPD into TwistWithCovariance. > > This one includes SVD, which is a big include in the base eigen. > > moved Wrench.hpp to new src > > moved TwistWithCovariance.hpp to new lib/src > > moved Waypoint to new src folder > > re-patched new isnan interface > > splitted TransformWithCovariance > > splitted Timueout > > moved headers to cpp files > > splitted TimeMark > > removed inlining > > splitted Time > > splitted Temperature > > moved Point > > splitted Pressure > > fixed compile errors > > Added correct PC file for base-types, made base-lib a dummy > > moved CircularBuffer > > moved Deprecated > > moved JointLimitRange > > moved JointLimits > > moved JointState > > moved JointTransform > > moved JointsTrajectory > > moved NamedVector > > moved Odometry > > added odometry > > ported rest of types > > re-removed vector included > > changed dep to right lib name > > compile fixes > > ------------------------------------------------------------------------ > > > You can view, comment on, or merge this pull request online at: > > https://github.com/rock-core/base-types/pull/94 > > > Commit Summary > > * Splitted base/types to seperate cpp and hpp files > > > File Changes > > * *M* CMakeLists.txt > <https://github.com/rock-core/base-types/pull/94/files#diff-0> (6) > * *D* base/JointLimitRange.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-1> (166) > * *D* base/JointLimits.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-2> (51) > * *D* base/JointTransform.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-3> (64) > * *D* base/Odometry.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-4> (16) > * *D* base/Temperature.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-5> (175) > * *D* base/Time.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-6> (252) > * *D* base/TimeMark.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-7> (39) > * *D* base/TransformWithCovariance.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-8> (413) > * *D* base/TwistWithCovariance.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-9> (286) > * *D* base/commands/AUVMotion.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-10> (26) > * *D* base/commands/AUVPosition.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-11> (24) > * *D* base/samples/BodyState.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-12> (337) > * *D* base/samples/Frame.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-13> (562) > * *D* base/samples/Joints.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-14> (116) > * *D* base/samples/RigidBodyState.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-15> (293) > * *D* base/samples/SonarBeam.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-16> (103) > * *D* base/samples/SonarScan.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-17> (398) > * *M* bindings/ruby/CMakeLists.txt > <https://github.com/rock-core/base-types/pull/94/files#diff-18> (2) > * *A* src/Angle.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-19> (171) > * *R* src/Angle.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-20> (192) > * *M* src/CMakeLists.txt > <https://github.com/rock-core/base-types/pull/94/files#diff-21> (113) > * *R* src/CircularBuffer.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-22> (0) > * *R* src/Deprecated.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-23> (0) > * *R* src/Eigen.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-24> (3) > * *R* src/Float.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-25> (11) > * *A* src/JointLimitRange.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-26> (118) > * *A* src/JointLimitRange.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-27> (79) > * *A* src/JointLimits.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-28> (33) > * *A* src/JointLimits.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-29> (23) > * *A* src/JointState.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-30> (149) > * *R* src/JointState.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-31> (104) > * *A* src/JointTransform.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-32> (28) > * *A* src/JointTransform.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-33> (39) > * *A* src/JointsTrajectory.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-34> (78) > * *R* src/JointsTrajectory.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-35> (67) > * *R* src/NamedVector.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-36> (0) > * *R* src/Point.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-37> (0) > * *A* src/Pose.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-38> (165) > * *R* src/Pose.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-39> (155) > * *A* src/Pressure.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-40> (46) > * *R* src/Pressure.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-41> (36) > * *A* src/Temperature.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-42> (120) > * *A* src/Temperature.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-43> (113) > * *A* src/Time.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-44> (270) > * *A* src/Time.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-45> (108) > * *A* src/TimeMark.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-46> (25) > * *A* src/TimeMark.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-47> (29) > * *A* src/Timeout.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-48> (50) > * *R* src/Timeout.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-49> (34) > * *A* src/Trajectory.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-50> (12) > * *R* src/Trajectory.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-51> (8) > * *A* src/TransformWithCovariance.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-52> (408) > * *A* src/TransformWithCovariance.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-53> (142) > * *A* src/TwistWithCovariance.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-54> (368) > * *A* src/TwistWithCovariance.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-55> (114) > * *A* src/Waypoint.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-56> (18) > * *R* src/Waypoint.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-57> (13) > * *R* src/Wrench.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-58> (0) > * *R* src/base-lib.pc.in > <https://github.com/rock-core/base-types/pull/94/files#diff-59> (4) > * *A* src/base-types.pc.in > <https://github.com/rock-core/base-types/pull/94/files#diff-60> (13) > * *R* src/commands/Joints.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-61> (0) > * *A* src/commands/Motion2D.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-62> (12) > * *R* src/commands/Motion2D.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-63> (4) > * *R* src/commands/Speed6D.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-64> (0) > * *A* src/samples/BodyState.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-65> (325) > * *A* src/samples/BodyState.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-66> (167) > * *R* src/samples/CommandSamples.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-67> (0) > * *A* src/samples/CompressedFrame.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-68> (9) > * *R* src/samples/CompressedFrame.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-69> (12) > * *A* src/samples/DepthMap.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-70> (91) > * *R* src/samples/DepthMap.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-71> (89) > * *A* src/samples/DistanceImage.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-72> (38) > * *R* src/samples/DistanceImage.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-73> (36) > * *A* src/samples/Frame.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-74> (419) > * *A* src/samples/Frame.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-75> (283) > * *R* src/samples/IMUSensors.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-76> (0) > * *A* src/samples/Joints.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-77> (94) > * *A* src/samples/Joints.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-78> (47) > * *A* src/samples/LaserScan.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-79> (69) > * *R* src/samples/LaserScan.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-80> (71) > * *R* src/samples/Pointcloud.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-81> (0) > * *A* src/samples/Pressure.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-82> (16) > * *R* src/samples/Pressure.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-83> (19) > * *A* src/samples/RigidBodyAcceleration.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-84> (7) > * *R* src/samples/RigidBodyAcceleration.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-85> (5) > * *A* src/samples/RigidBodyState.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-86> (306) > * *A* src/samples/RigidBodyState.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-87> (180) > * *A* src/samples/Sonar.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-88> (268) > * *R* src/samples/Sonar.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-89> (252) > * *A* src/samples/SonarBeam.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-90> (63) > * *A* src/samples/SonarBeam.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-91> (56) > * *A* src/samples/SonarScan.cpp > <https://github.com/rock-core/base-types/pull/94/files#diff-92> (310) > * *A* src/samples/SonarScan.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-93> (164) > * *R* src/samples/Wrench.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-94> (0) > * *R* src/samples/Wrenches.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-95> (0) > * *R* src/templates/TimeStamped.hpp > <https://github.com/rock-core/base-types/pull/94/files#diff-96> (0) > * *M* viz/CMakeLists.txt > <https://github.com/rock-core/base-types/pull/94/files#diff-97> (2) > > > Patch Links: > > * https://github.com/rock-core/base-types/pull/94.patch > * https://github.com/rock-core/base-types/pull/94.diff > > — > You are receiving this because you are subscribed to this thread. > Reply to this email directly, view it on GitHub > <https://github.com/rock-core/base-types/pull/94>, or mute the thread > <https://github.com/notifications/unsubscribe-auth/AAJ0QsRbtQCv0MHYRWumDnFsyKd8gXQ7ks5qeDzHgaJpZM4Jf14N>.Image > removed by sender. > > > > > > _______________________________________________ > Rock-dev mailing list > [email protected] > http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev > -- Dipl.-Inf. Martin Fritsche Unterwasserrobotik Hauptgeschäftsstelle Standort Bremen: DFKI GmbH Robotics Innovation Center Robert-Hooke-Straße 1 28359 Bremen, Germany Tel.: +49 (0)421 17845-4134 Zentrale: +49 421 17845-0 Fax: +49 (0)421 17845-4150 (Faxe bitte namentlich kennzeichnen) E-Mail: [email protected] Weitere Informationen: http://www.dfki.de/robotik ----------------------------------------------------------------------- Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender) Dr. Walter Olthoff Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes Amtsgericht Kaiserslautern, HRB 2313 Sitz der Gesellschaft: Kaiserslautern (HRB 2313) USt-Id.Nr.: DE 148646973 Steuernummer: 19/673/0060/3 -----------------------------------------------------------------------
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Rock-dev mailing list [email protected] http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev
