From e78e663384d3ab75ce0f5c4a7d4e4c88d3c650c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Klinkovsk=C3=BD?= <klinkjak@fjfi.cvut.cz> Date: Sat, 15 Sep 2018 16:41:39 +0200 Subject: [PATCH] Reverted optimization in NeighborGridEntitiesStorage which didn't work Even the methods for specializations without storage have to return something, which was not the case... --- .../GridDetails/NeighborGridEntitiesStorage.h | 58 ++----------------- 1 file changed, 4 insertions(+), 54 deletions(-) diff --git a/src/TNL/Meshes/GridDetails/NeighborGridEntitiesStorage.h b/src/TNL/Meshes/GridDetails/NeighborGridEntitiesStorage.h index 2bef7d8bdf..dd9562add3 100644 --- a/src/TNL/Meshes/GridDetails/NeighborGridEntitiesStorage.h +++ b/src/TNL/Meshes/GridDetails/NeighborGridEntitiesStorage.h @@ -22,12 +22,7 @@ template< typename GridEntity, int NeighborEntityDimension, typename GridEntityConfig, bool storage = GridEntityConfig::template neighborEntityStorage< GridEntity >( NeighborEntityDimension ) > -class NeighborGridEntityLayer{}; - -template< typename GridEntity, - int NeighborEntityDimension, - typename GridEntityConfig > -class NeighborGridEntityLayer< GridEntity, NeighborEntityDimension, GridEntityConfig, true > +class NeighborGridEntityLayer : public NeighborGridEntityLayer< GridEntity, NeighborEntityDimension - 1, GridEntityConfig > { public: @@ -63,8 +58,9 @@ class NeighborGridEntityLayer< GridEntity, NeighborEntityDimension, GridEntityCo }; template< typename GridEntity, - typename GridEntityConfig > -class NeighborGridEntityLayer< GridEntity, 0, GridEntityConfig, true > + typename GridEntityConfig, + bool storage > +class NeighborGridEntityLayer< GridEntity, 0, GridEntityConfig, storage > { public: @@ -93,52 +89,6 @@ class NeighborGridEntityLayer< GridEntity, 0, GridEntityConfig, true > NeighborEntityGetterType neighborEntities; }; -template< typename GridEntity, - int NeighborEntityDimension, - typename GridEntityConfig > -class NeighborGridEntityLayer< GridEntity, NeighborEntityDimension, GridEntityConfig, false > -: public NeighborGridEntityLayer< GridEntity, NeighborEntityDimension - 1, GridEntityConfig > -{ - public: - - typedef NeighborGridEntityLayer< GridEntity, NeighborEntityDimension - 1, GridEntityConfig > BaseType; - typedef NeighborGridEntityGetter< GridEntity, NeighborEntityDimension > NeighborEntityGetterType; - - using BaseType::getNeighborEntities; - - __cuda_callable__ - NeighborGridEntityLayer( const GridEntity& entity ) - : BaseType( entity ) - {} - - __cuda_callable__ - const NeighborEntityGetterType& getNeighborEntities( const DimensionTag< NeighborEntityDimension >& tag ) const {} - - __cuda_callable__ - void refresh( const typename GridEntity::GridType& grid, - const typename GridEntity::GridType::IndexType& entityIndex ) {} -}; - -template< typename GridEntity, - typename GridEntityConfig > -class NeighborGridEntityLayer< GridEntity, 0, GridEntityConfig, false > -{ - public: - - typedef NeighborGridEntityGetter< GridEntity, 0 > NeighborEntityGetterType; - - __cuda_callable__ - NeighborGridEntityLayer( const GridEntity& entity ){} - - __cuda_callable__ - const NeighborEntityGetterType& getNeighborEntities( const DimensionTag< 0 >& tag ) const {} - - __cuda_callable__ - void refresh( const typename GridEntity::GridType& grid, - const typename GridEntity::GridType::IndexType& entityIndex ) {} -}; - - template< typename GridEntity, -- GitLab