Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,15 @@ template class SOFA_GPU_CUDA_API LineCollisionModel<sofa::gpu::cuda::CudaVec3d1T
namespace sofa::gpu::cuda
{

const int LineModelCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerLineCollisionModel(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the LineCollisionModel")
.add< component::collision::geometry::LineCollisionModel<CudaVec3fTypes> >()
.add< component::collision::geometry::LineCollisionModel<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< component::collision::geometry::LineCollisionModel<CudaVec3dTypes> >()
.add< component::collision::geometry::LineCollisionModel<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,11 @@
namespace sofa::gpu::cuda
{

int CudaPointCollisionModelClass = core::RegisterObject("GPU-based point collision model using CUDA")
void registerPointCollisionModel(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the PointCollisionModel")
.add< CudaPointCollisionModel >()
;
}

using namespace defaulttype;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,18 @@ template class SOFA_GPU_CUDA_API SphereCollisionModel<sofa::gpu::cuda::CudaVec3d
namespace sofa::gpu::cuda
{

const int CudaSphereModelClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerSphereCollisionModel(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the SphereCollisionModel")
.add< component::collision::geometry::SphereCollisionModel<CudaVec3fTypes> >()
.add< component::collision::geometry::SphereCollisionModel<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< component::collision::geometry::SphereCollisionModel<CudaVec3dTypes> >()
.add< component::collision::geometry::SphereCollisionModel<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
.addAlias("CudaSphere")
.addAlias("CudaSphereModel");
.addAlias("CudaSphereModel")
}

} // namespace sofa::gpu::cuda

Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,15 @@ template class SOFA_GPU_CUDA_API TriangleCollisionModel<sofa::gpu::cuda::CudaVec
namespace sofa::gpu::cuda
{

const int TriangleModelCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerTriangleCollisionModel(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the TriangleCollisionModel")
.add< component::collision::geometry::TriangleCollisionModel<CudaVec3fTypes> >()
.add< component::collision::geometry::TriangleCollisionModel<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< component::collision::geometry::TriangleCollisionModel<CudaVec3dTypes> >()
.add< component::collision::geometry::TriangleCollisionModel<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,15 @@ template class SOFA_GPU_CUDA_API PenalityContactForceField< CudaVec3d1Types>;
namespace sofa::gpu::cuda
{

int PenalityContactForceFieldCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerPenalityContactForceField(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the PenalityContactForceField")
.add< sofa::component::collision::response::contact::PenalityContactForceField<CudaVec3fTypes> >()
.add< sofa::component::collision::response::contact::PenalityContactForceField<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< sofa::component::collision::response::contact::PenalityContactForceField<CudaVec3dTypes> >()
.add< sofa::component::collision::response::contact::PenalityContactForceField<CudaVec3d1Types> >()
#endif
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -43,14 +43,16 @@ namespace sofa::gpu::cuda
{
using namespace sofa::component::constraint::lagrangian::correction;

const int CudaLinearSolverConstraintCorrectionClass = core::RegisterObject("Supports GPU-side computations using CUDA.")
.add< LinearSolverConstraintCorrection< CudaVec3fTypes > >()
.add< LinearSolverConstraintCorrection< CudaVec3f1Types > >()
void registerLinearSolverConstraintCorrection(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the LinearSolverConstraintCorrection")
.add< LinearSolverConstraintCorrection< CudaVec3fTypes > >()
.add< LinearSolverConstraintCorrection< CudaVec3f1Types > >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< LinearSolverConstraintCorrection< CudaVec3dTypes > >()
.add< LinearSolverConstraintCorrection< CudaVec3d1Types > >()
.add< LinearSolverConstraintCorrection< CudaVec3dTypes > >()
.add< LinearSolverConstraintCorrection< CudaVec3d1Types > >()
#endif
;
}

} // namespace sofa::gpu::cuda

Original file line number Diff line number Diff line change
Expand Up @@ -42,13 +42,15 @@ namespace sofa::gpu::cuda
{
using namespace sofa::component::constraint::lagrangian::correction;

const int CudaPrecomputedConstraintCorrectionClass = core::RegisterObject("Supports GPU-side computations using CUDA.")
.add< PrecomputedConstraintCorrection< CudaVec3fTypes > >()
.add< PrecomputedConstraintCorrection< CudaVec3f1Types > >()
void registerPrecomputedConstraintCorrection(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the PrecomputedConstraintCorrection")
.add< PrecomputedConstraintCorrection< CudaVec3fTypes > >()
.add< PrecomputedConstraintCorrection< CudaVec3f1Types > >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< PrecomputedConstraintCorrection< CudaVec3dTypes > >()
.add< PrecomputedConstraintCorrection< CudaVec3d1Types > >()
.add< PrecomputedConstraintCorrection< CudaVec3dTypes > >()
.add< PrecomputedConstraintCorrection< CudaVec3d1Types > >()
#endif
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,17 @@ template class SOFA_GPU_CUDA_API UncoupledConstraintCorrection< CudaVec3d1Types

namespace sofa::gpu::cuda
{
using namespace sofa::component::constraint::lagrangian::correction;
using namespace sofa::component::constraint::lagrangian::correction;

const int CudaUncoupledConstraintCorrectionClass = core::RegisterObject("Supports GPU-side computations using CUDA.")
.add< UncoupledConstraintCorrection< CudaVec3fTypes > >()
.add< UncoupledConstraintCorrection< CudaVec3f1Types > >()
void registerUncoupledConstraintCorrection(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the UncoupledConstraintCorrection")
.add< UncoupledConstraintCorrection< CudaVec3fTypes > >()
.add< UncoupledConstraintCorrection< CudaVec3f1Types > >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< UncoupledConstraintCorrection< CudaVec3dTypes > >()
.add< UncoupledConstraintCorrection< CudaVec3d1Types > >()
.add< UncoupledConstraintCorrection< CudaVec3dTypes > >()
.add< UncoupledConstraintCorrection< CudaVec3d1Types > >()
#endif
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,17 @@ template class SOFA_GPU_CUDA_API BilateralLagrangianConstraint<gpu::cuda::CudaVe
namespace sofa::gpu::cuda
{

using namespace sofa::component::constraint::lagrangian::model;
using namespace sofa::component::constraint::lagrangian::model;

int BilateralLagrangianConstraintCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
.add< BilateralLagrangianConstraint<CudaVec3fTypes> >()
.add< BilateralLagrangianConstraint<CudaVec3f1Types> >()
void registerBilateralLagrangianConstraint(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the BilateralLagrangianConstraint")
.add< BilateralLagrangianConstraint<CudaVec3fTypes> >()
.add< BilateralLagrangianConstraint<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< BilateralLagrangianConstraint<CudaVec3dTypes> >()
.add< BilateralLagrangianConstraint<CudaVec3d1Types> >()
.add< BilateralLagrangianConstraint<CudaVec3dTypes> >()
.add< BilateralLagrangianConstraint<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,9 @@ template class SOFA_GPU_CUDA_API FixedProjectiveConstraint<gpu::cuda::CudaRigid3
namespace sofa::gpu::cuda
{

int FixedProjectiveConstraintCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerFixedProjectiveConstraint(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the FixedProjectiveConstraint")
.add< component::constraint::projective::FixedProjectiveConstraint<CudaVec1fTypes> >()
.add< component::constraint::projective::FixedProjectiveConstraint<CudaVec3fTypes> >()
.add< component::constraint::projective::FixedProjectiveConstraint<CudaVec3f1Types> >()
Expand All @@ -59,6 +61,6 @@ int FixedProjectiveConstraintCudaClass = core::RegisterObject("Supports GPU-side
.add< component::constraint::projective::FixedProjectiveConstraint<CudaVec6dTypes> >()
.add< component::constraint::projective::FixedProjectiveConstraint<CudaRigid3dTypes> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -112,19 +112,15 @@ template class SOFA_GPU_CUDA_API FixedTranslationProjectiveConstraint<gpu::cuda:
namespace sofa::gpu::cuda
{


int FixedTranslationProjectiveConstraintCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
// .add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaVec3fTypes> >()
// .add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaVec3f1Types> >()
void registerFixedTranslationProjectiveConstraint(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the FixedTranslationProjectiveConstraint")
.add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaVec6fTypes> >()
.add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaRigid3fTypes> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
// .add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaVec3dTypes> >()
// .add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaVec3d1Types> >()
.add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaVec6dTypes> >()
.add< component::constraint::projective::FixedTranslationProjectiveConstraint<CudaRigid3dTypes> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;

}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,15 @@ namespace sofa::core::behavior
namespace sofa::gpu::cuda
{


int LinearMovementProjectiveConstraintCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
// .add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaVec3fTypes> >()
// .add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaVec3f1Types> >()
void registerLinearMovementProjectiveConstraint(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the LinearMovementProjectiveConstraint")
.add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaVec6fTypes> >()
.add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaRigid3fTypes> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
// .add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaVec3dTypes> >()
// .add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaVec3d1Types> >()
.add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaVec6dTypes> >()
.add< component::constraint::projective::LinearMovementProjectiveConstraint<CudaRigid3dTypes> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,15 @@ template class SOFA_GPU_CUDA_API LinearVelocityProjectiveConstraint<gpu::cuda::C
namespace sofa::gpu::cuda
{

int LinearVelocityProjectiveConstraintCudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerLinearVelocityProjectiveConstraint(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the LinearVelocityProjectiveConstraint")
.add< sofa::component::constraint::projective::LinearVelocityProjectiveConstraint<CudaVec6fTypes> >()
.add< sofa::component::constraint::projective::LinearVelocityProjectiveConstraint<CudaRigid3fTypes> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< sofa::component::constraint::projective::LinearVelocityProjectiveConstraint<CudaVec6dTypes> >()
.add< sofa::component::constraint::projective::LinearVelocityProjectiveConstraint<CudaRigid3dTypes> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,9 @@ template class SOFA_GPU_CUDA_API boxroi::BoxROI<gpu::cuda::CudaVec3d1Types>;

namespace sofa::gpu::cuda
{
int BoxROICudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerBoxROI(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the BoxROI")
.add< component::engine::select::boxroi::BoxROI<CudaVec2fTypes> >()
.add< component::engine::select::boxroi::BoxROI<CudaVec3fTypes> >()
.add< component::engine::select::boxroi::BoxROI<CudaVec3f1Types> >()
Expand All @@ -52,7 +54,7 @@ int BoxROICudaClass = core::RegisterObject("Supports GPU-side computations using
.add< component::engine::select::boxroi::BoxROI<CudaVec3d1Types> >()
.add< component::engine::select::boxroi::BoxROI<CudaRigid3dTypes> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda

Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,15 @@ template class SOFA_GPU_CUDA_API NearestPointROI<gpu::cuda::CudaVec3d1Types>;
namespace sofa::gpu::cuda
{

int NearestPointROICudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerNearestPointROI(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the NearestPointROI")
.add< component::engine::select::NearestPointROI<CudaVec3fTypes> >()
.add< component::engine::select::NearestPointROI<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< component::engine::select::NearestPointROI<CudaVec3dTypes> >()
.add< component::engine::select::NearestPointROI<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,15 @@ template class SOFA_GPU_CUDA_API SphereROI<gpu::cuda::CudaVec3d1Types>;
namespace sofa::gpu::cuda
{

int SphereROICudaClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerSphereROI(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the SphereROI")
.add< component::engine::select::SphereROI<CudaVec3fTypes> >()
.add< component::engine::select::SphereROI<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add< component::engine::select::SphereROI<CudaVec3dTypes> >()
.add< component::engine::select::SphereROI<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -39,14 +39,15 @@ template class SOFA_GPU_CUDA_API IndexValueMapper<gpu::cuda::CudaVec3d1Types>;

namespace sofa::gpu::cuda
{

int IndexValueMapperClass = core::RegisterObject("Supports GPU-side computations using CUDA")
void registerIndexValueMapper(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the IndexValueMapper")
.add<component::engine::transform::IndexValueMapper<CudaVec3fTypes> >()
.add<component::engine::transform::IndexValueMapper<CudaVec3f1Types> >()
#ifdef SOFA_GPU_CUDA_DOUBLE
.add<component::engine::transform::IndexValueMapper<CudaVec3dTypes> >()
.add<component::engine::transform::IndexValueMapper<CudaVec3d1Types> >()
#endif // SOFA_GPU_CUDA_DOUBLE
;
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -266,8 +266,10 @@ using namespace sofa::core;
using namespace sofa::core::behavior;
using namespace sofa::component::mapping::linear;

int BarycentricMappingCudaClass_3f = core::RegisterObject("Supports GPU-side computations using CUDA")
.add< BarycentricMapping< CudaVec3fTypes, CudaVec3fTypes> >()
;
void registerBarycentricMapping_3f(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the BarycentricMapping_3f")
.add< BarycentricMapping< CudaVec3fTypes, CudaVec3fTypes> >()
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -427,9 +427,11 @@ using namespace sofa::core;
using namespace sofa::core::behavior;
using namespace sofa::component::mapping::linear;

int BarycentricMappingCudaClass_3f1_3f = core::RegisterObject("Supports GPU-side computations using CUDA")
.add< BarycentricMapping< CudaVec3f1Types, CudaVec3fTypes> >()
.add< BarycentricMapping< CudaVec3fTypes, CudaVec3f1Types> >()
;
void registerBarycentricMapping_3f1_3f(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the BarycentricMapping_3f1_3f")
.add< BarycentricMapping< CudaVec3f1Types, CudaVec3fTypes> >()
.add< BarycentricMapping< CudaVec3fTypes, CudaVec3f1Types> >()
}

} // namespace sofa::gpu::cuda
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,11 @@ using namespace sofa::core;
using namespace sofa::core::behavior;
using namespace sofa::component::mapping::linear;

int BarycentricMappingCudaClass_3f1_d = core::RegisterObject("Supports GPU-side computations using CUDA")
.add< BarycentricMapping< Vec3Types, CudaVec3f1Types> >()
.add< BarycentricMapping< CudaVec3f1Types, Vec3Types> >()

;
void registerBarycentricMapping_3f1_d(sofa::core::ObjectFactory* factory)
{
factory->registerObjects(sofa::core::ObjectRegistrationData("Supports GPU-side computations using CUDA for the registerBarycentricMapping_3f1_d")
.add< BarycentricMapping< Vec3Types, CudaVec3f1Types> >()
.add< BarycentricMapping< CudaVec3f1Types, Vec3Types> >()
}

} // namespace sofa::gpu::cuda
Loading
Loading