Loading src/TNL/Meshes/MeshDetails/initializer/EntityInitializer.h +8 −0 Original line number Diff line number Diff line Loading @@ -54,8 +54,14 @@ class EntityInitializer using SeedType = EntitySeed< MeshConfig, EntityTopology >; using InitializerType = Initializer< MeshConfig >; using NeighborCountsArray = typename MeshTraitsType::NeighborCountsArray; public: static void initSubvertexMatrix( const NeighborCountsArray& capacities, InitializerType& initializer ) { initializer.template initSubentityMatrix< EntityTopology::dimension, 0 >( capacities ); } static void initEntity( const GlobalIndexType entityIndex, const SeedType& entitySeed, InitializerType& initializer ) { // this is necessary if we want to use existing entities instead of intermediate seeds to create subentity seeds Loading @@ -76,7 +82,9 @@ class EntityInitializer< MeshConfig, EntityTopology, false > using SeedType = EntitySeed< MeshConfig, EntityTopology >; using InitializerType = Initializer< MeshConfig >; using NeighborCountsArray = typename MeshTraitsType::NeighborCountsArray; public: static void initSubvertexMatrix( const NeighborCountsArray& capacities, InitializerType& initializer ) {} static void initEntity( const GlobalIndexType entityIndex, const SeedType& entitySeed, InitializerType& initializer ) {} }; Loading src/TNL/Meshes/MeshDetails/initializer/Initializer.h +2 −2 Original line number Diff line number Diff line Loading @@ -183,7 +183,7 @@ class InitializerLayer< MeshConfig, typename MeshTraits< MeshConfig >::Dimension for( LocalIndexType i = 0; i < capacities.getSize(); i++ ) capacities[ i ] = cellSeeds[ i ].getCornersCount(); initializer.template initSubentityMatrix< EntityTopology::dimension, 0 >( capacities ); EntityInitializerType::initSubvertexMatrix( capacities, initializer ); for( GlobalIndexType i = 0; i < cellSeeds.getSize(); i++ ) EntityInitializerType::initEntity( i, cellSeeds[ i ], initializer ); Loading Loading @@ -252,7 +252,7 @@ class InitializerLayer NeighborCountsArray capacities( numberOfEntities ); int vertexCount = MeshTraitsType::template SubentityTraits< EntityTopology, 0 >::count; capacities.setValue( vertexCount ); initializer.template initSubentityMatrix< EntityTopology::dimension, 0 >( capacities ); EntityInitializerType::initSubvertexMatrix( capacities, initializer ); using SubentitySeedsCreator = SubentitySeedsCreator< MeshConfig, typename MeshTraitsType::CellTopology, DimensionTag >; for( GlobalIndexType i = 0; i < mesh.template getEntitiesCount< MeshType::getMeshDimension() >(); i++ ) Loading src/TNL/Meshes/MeshDetails/layers/StorageLayer.h +2 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,8 @@ public: setSubentitiesCounts( const typename MeshTraitsType::NeighborCountsArray& counts ) { static_assert( Dimension > Subdimension, "Invalid combination of Dimension and Subdimension." ); static_assert( SubentityTraits< Dimension, Subdimension >::storageEnabled, "You try to set subentitiesCounts for a combination of Dimension and Subdimension which is disabled in the mesh configuration." ); using BaseType = SubentityStorageLayerFamily< MeshConfig, Device, typename EntityTraits< Dimension >::EntityTopology >; Loading Loading
src/TNL/Meshes/MeshDetails/initializer/EntityInitializer.h +8 −0 Original line number Diff line number Diff line Loading @@ -54,8 +54,14 @@ class EntityInitializer using SeedType = EntitySeed< MeshConfig, EntityTopology >; using InitializerType = Initializer< MeshConfig >; using NeighborCountsArray = typename MeshTraitsType::NeighborCountsArray; public: static void initSubvertexMatrix( const NeighborCountsArray& capacities, InitializerType& initializer ) { initializer.template initSubentityMatrix< EntityTopology::dimension, 0 >( capacities ); } static void initEntity( const GlobalIndexType entityIndex, const SeedType& entitySeed, InitializerType& initializer ) { // this is necessary if we want to use existing entities instead of intermediate seeds to create subentity seeds Loading @@ -76,7 +82,9 @@ class EntityInitializer< MeshConfig, EntityTopology, false > using SeedType = EntitySeed< MeshConfig, EntityTopology >; using InitializerType = Initializer< MeshConfig >; using NeighborCountsArray = typename MeshTraitsType::NeighborCountsArray; public: static void initSubvertexMatrix( const NeighborCountsArray& capacities, InitializerType& initializer ) {} static void initEntity( const GlobalIndexType entityIndex, const SeedType& entitySeed, InitializerType& initializer ) {} }; Loading
src/TNL/Meshes/MeshDetails/initializer/Initializer.h +2 −2 Original line number Diff line number Diff line Loading @@ -183,7 +183,7 @@ class InitializerLayer< MeshConfig, typename MeshTraits< MeshConfig >::Dimension for( LocalIndexType i = 0; i < capacities.getSize(); i++ ) capacities[ i ] = cellSeeds[ i ].getCornersCount(); initializer.template initSubentityMatrix< EntityTopology::dimension, 0 >( capacities ); EntityInitializerType::initSubvertexMatrix( capacities, initializer ); for( GlobalIndexType i = 0; i < cellSeeds.getSize(); i++ ) EntityInitializerType::initEntity( i, cellSeeds[ i ], initializer ); Loading Loading @@ -252,7 +252,7 @@ class InitializerLayer NeighborCountsArray capacities( numberOfEntities ); int vertexCount = MeshTraitsType::template SubentityTraits< EntityTopology, 0 >::count; capacities.setValue( vertexCount ); initializer.template initSubentityMatrix< EntityTopology::dimension, 0 >( capacities ); EntityInitializerType::initSubvertexMatrix( capacities, initializer ); using SubentitySeedsCreator = SubentitySeedsCreator< MeshConfig, typename MeshTraitsType::CellTopology, DimensionTag >; for( GlobalIndexType i = 0; i < mesh.template getEntitiesCount< MeshType::getMeshDimension() >(); i++ ) Loading
src/TNL/Meshes/MeshDetails/layers/StorageLayer.h +2 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,8 @@ public: setSubentitiesCounts( const typename MeshTraitsType::NeighborCountsArray& counts ) { static_assert( Dimension > Subdimension, "Invalid combination of Dimension and Subdimension." ); static_assert( SubentityTraits< Dimension, Subdimension >::storageEnabled, "You try to set subentitiesCounts for a combination of Dimension and Subdimension which is disabled in the mesh configuration." ); using BaseType = SubentityStorageLayerFamily< MeshConfig, Device, typename EntityTraits< Dimension >::EntityTopology >; Loading