Commit 68856a3b authored by Jakub Klinkovský's avatar Jakub Klinkovský
Browse files

Fixed bugs in MeshConfigValidator

parent f9105628
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -71,10 +71,11 @@ struct MeshConfigBase
   static constexpr bool subentityStorage( EntityTopology, int SubentityDimensions )
   {
      /****
       *  Vertices must always be stored
       *  Subvertices of all stored entities must always be stored
       */
      return true;
      //return ( SubentityDimensions == 0 );
      return entityStorage( EntityTopology::dimensions );
      //return entityStorage( EntityTopology::dimensions ) &&
      //       SubentityDimensions == 0;
   }

   /****
@@ -93,7 +94,7 @@ struct MeshConfigBase
   template< typename EntityTopology >
   static constexpr bool superentityStorage( EntityTopology, int SuperentityDimensions )
   {
      return true;
      return entityStorage( EntityTopology::dimensions );
      //return false;
   }
};
+4 −4
Original line number Diff line number Diff line
@@ -45,8 +45,8 @@ template< typename MeshConfig,
class MeshConfigValidatorSubtopologyLayer< MeshConfig, EntityTopology, MeshDimensionsTag< 0 > >
{
   static_assert( ! MeshConfig::subentityStorage( EntityTopology(), 0 ) ||
                    MeshConfig::entityStorage( 0 ),
                  "entities that are stored as subentities must be stored" );
                    MeshConfig::entityStorage( EntityTopology::dimensions ),
                  "entities of which subvertices are stored must be stored" );
   static_assert( ! MeshConfig::subentityOrientationStorage( EntityTopology(), 0 ),
                  "storage of vertex orientation does not make sense" );
};
@@ -58,10 +58,10 @@ template< typename MeshConfig,
class MeshConfigValidatorSupertopologyLayer
   : public MeshConfigValidatorSupertopologyLayer< MeshConfig, EntityTopology, typename dimensions::Decrement >
{
   static_assert( ! MeshConfig::superentityStorage( EntityTopology(), 0 ) ||
   static_assert( ! MeshConfig::superentityStorage( EntityTopology(), dimensions::value ) ||
                    MeshConfig::entityStorage( EntityTopology::dimensions ),
                  "entities of which superentities are stored must be stored");
   static_assert( ! MeshConfig::superentityStorage( EntityTopology(), 0 ) ||
   static_assert( ! MeshConfig::superentityStorage( EntityTopology(), dimensions::value ) ||
                    MeshConfig::entityStorage( dimensions::value ),
                  "entities that are stored as superentities must be stored");
};