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

[all] Remove SOFA_FLOAT (all steps) #853

Merged
merged 64 commits into from Dec 20, 2018

Conversation

3 participants
@damienmarchal
Copy link
Contributor

commented Dec 5, 2018

Follow issue #495 , implements the removal.

Changelog:

  • Remove SOFA_FLOAT specific code everywhere.
  • Remove all template instantiation based on double type.
  • All types now have strict version eg: Vec3f, Vec3d and well as an un-defined precision one Vec3. This is implemented without #ifdef
  • All the component registred to the ObjectFactory are now only using the un-defined precision version of their template.
  • Add a mechanism to TemplateAlias.cpp so we can print a warning
  • In sofa scenes, both xxtypexxf and xxtypexxd are translated into xxtypexx using the TemplateAlias mechanisme. If the conversion involve a precision change a warning is emitted.
  • Clean a sources by removing commented code.
  • Deprecate the use of #include <sofa/defaulttype/Vec3Types.h> and use #include <sofa/defaulttype/VecTypes.h> (because using two files pointing to the same thing is only adding noise).

This PR:

  • builds with SUCCESS for all platforms on the CI.
  • does not generate new warnings.
  • does not generate new unit test failures.
  • does not generate new scene test failures.
  • does not break API compatibility.
  • is more than 1 week old (or has fast-merge label).

Reviewers will merge only if all these checks are true.

damienmarchal added some commits Dec 4, 2018

Merge remote-tracking branch 'upstream/master' into sofaStc7
# Conflicts:
#	modules/SofaMiscMapping/BarycentricMappingRigid.cpp
#	modules/SofaMiscMapping/BarycentricMappingRigid.h
Merge remote-tracking branch 'upstream/master' into sofaStc7
# Conflicts:
#	modules/SofaMiscMapping/DeformableOnRigidFrameMapping.inl
@damienmarchal

This comment has been minimized.

Copy link
Contributor Author

commented Dec 10, 2018

[ci-build][[with-scene-tests]

damienmarchal added some commits Dec 11, 2018

[SofaMiscMapping] FIX duplicated CenterOfMassMapping registration in …
…the factory.

Because of the SOFA_FLOAT removale the registration was duplicated.
@damienmarchal

This comment has been minimized.

Copy link
Contributor Author

commented Dec 11, 2018

[ci-build][[with-scene-tests]

@epernod

This comment has been minimized.

Copy link
Contributor

commented Dec 11, 2018

Nice work, do you need help to test?

@damienmarchal

This comment has been minimized.

Copy link
Contributor Author

commented Dec 11, 2018

Hi Erik,

Thank you for the offer,
If you have time you could look at the failing scenes to see what is wrong and how it would be best to validate that. Maybe testing this branch with your plugins or scenes would also be very useful.

DM.

@damienmarchal damienmarchal force-pushed the SofaDefrost:sofaStc7 branch from 2c2c314 to 26ff507 Dec 18, 2018

@damienmarchal

This comment has been minimized.

Copy link
Contributor Author

commented Dec 18, 2018

[ci-build][with-scene-tests]

damienmarchal added some commits Dec 19, 2018

[SofaTest] Remove ambiguous typedef.
There is now a Vec3 in defaultype so there is no need to define a second one.
@damienmarchal

This comment has been minimized.

Copy link
Contributor Author

commented Dec 19, 2018

To me, here are the important files to review if you agree with the changes made:
In SofaKernel:

  • Vec.h
  • VecTypes.h
  • Mat.h
  • Quat.h
  • RigidTypes.h
  • TemplateAlias.cpp
  • TemplateAlias.h

In Flexible

  • StrainTypes
  • DeformationGradientTypes

damienmarchal added some commits Dec 19, 2018

Merge remote-tracking branch 'upstream/master' into sofaStc7
# Conflicts:
#	applications/plugins/Compliant/compliance/UniformCompliance.cpp
#	modules/SofaBoundaryCondition/SurfacePressureForceField.inl
@damienmarchal

This comment has been minimized.

Copy link
Contributor Author

commented Dec 19, 2018

I'm really proud of this PR that touch 950 files and does not break too much scenes.

@epernod epernod merged commit 521a24f into sofa-framework:master Dec 20, 2018

6 of 7 checks passed

Jk2/[with-regression-tests] Missing.
Details
Jk2/Dashboard Builds triggered.
Details
Jk2/[with-scene-tests] Triggered in latest build.
Details
Jk2/centos_clang-5_options Build OK. FIXME: 0 unit tests, 0 scene tests
Details
Jk2/mac_clang-3.5_options Build OK. FIXME: 1 unit tests, 3 scene tests
Details
Jk2/ubuntu_gcc-5.4_options Build OK. FIXME: 0 unit tests, 0 scene tests
Details
Jk2/windows7_VS-2015_options_amd64 Build OK. FIXME: 1 unit tests, 1 scene tests
Details

@damienmarchal damienmarchal deleted the SofaDefrost:sofaStc7 branch Feb 25, 2019

@guparan guparan added this to the v19.06 milestone Jun 20, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.