diff --git a/src/TNL/Meshes/BuildConfigTags.h b/src/TNL/Meshes/BuildConfigTags.h index 73b1e8ae1e3c5f801a4fa2505ee10eb249f2c1b0..573c3393ce7a75e7124968c34e35f8fc7f324efd 100644 --- a/src/TNL/Meshes/BuildConfigTags.h +++ b/src/TNL/Meshes/BuildConfigTags.h @@ -65,10 +65,12 @@ struct GridTag< ConfigTag, Grid< Dimension, Real, Device, Index > > * Configuration for unstructured meshes */ -// Meshes are enabled only on host. -// TODO: enable Devices::Cuda by default when implemented +// Meshes are enabled on all available devices by default. template< typename ConfigTag, typename Device > struct MeshDeviceTag { enum { enabled = false }; }; template< typename ConfigTag > struct MeshDeviceTag< ConfigTag, Devices::Host > { enum { enabled = true }; }; +#ifdef HAVE_CUDA +template< typename ConfigTag > struct MeshDeviceTag< ConfigTag, Devices::Cuda > { enum { enabled = true }; }; +#endif // All available cell topologies are disabled by default. template< typename ConfigTag, typename CellTopology > struct MeshCellTopologyTag { enum { enabled = false }; }; diff --git a/src/TNL/Solvers/PDE/MeshDependentTimeSteps.h b/src/TNL/Solvers/PDE/MeshDependentTimeSteps.h index d7031301b638bbbe187ea433264466cb62616861..143c4b7f02755057238ca878c52b75ae0a57a32e 100644 --- a/src/TNL/Solvers/PDE/MeshDependentTimeSteps.h +++ b/src/TNL/Solvers/PDE/MeshDependentTimeSteps.h @@ -57,8 +57,9 @@ protected: }; template< typename MeshConfig, + typename Device, typename Real > -class MeshDependentTimeSteps< TNL::Meshes::Mesh< MeshConfig >, Real > +class MeshDependentTimeSteps< TNL::Meshes::Mesh< MeshConfig, Device >, Real > { public: using MeshType = TNL::Meshes::Mesh< MeshConfig >;