17#include "ioss_export.h"
20 class ElementTopology;
21 class ElementPermutation;
33 using EPM_VP = ElementPermutationMap::value_type;
43 return m_registry.find(type);
79 bool fill_permutation_indices(
Permutation permutation,
80 std::vector<Ordinal> &nodeOrdinalVector)
const;
96 static int describe(
NameList *names);
125 const std::vector<std::vector<Permutation>> &permutationNodeOrdinals_);
132 std::string m_type{};
136 std::vector<std::vector<Permutation>> m_permutationNodeOrdinals{};
144 static void factory();
156 static void factory();
168 static void factory();
180 static void factory();
192 static void factory();
204 static void factory();
216 static void factory();
228 static void factory();
240 static void factory();
252 static void factory();
264 static void make_super(
const std::string &type);
265 static void factory();
266 static void factory(
unsigned n);
269 static std::string get_name(
unsigned n);
275 static std::vector<std::vector<Permutation>> get_super_permutations(
unsigned n);
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:54
Definition Ioss_ElementPermutation.h:36
Ioss::ElementPermutationMap m_registry
Definition Ioss_ElementPermutation.h:49
IOSS_NODISCARD ElementPermutationMap::iterator find(const std::string &type)
Definition Ioss_ElementPermutation.h:41
IOSS_NODISCARD ElementPermutationMap::iterator begin()
Definition Ioss_ElementPermutation.h:39
IOSS_NODISCARD ElementPermutationMap::iterator end()
Definition Ioss_ElementPermutation.h:40
std::vector< Ioss::ElementPermutation * > m_deleteThese
Definition Ioss_ElementPermutation.h:50
Definition Ioss_ElementPermutation.h:60
ElementPermutation & operator=(const ElementPermutation &)=delete
ElementPermutation(const ElementPermutation &)=delete
virtual ~ElementPermutation()=default
Definition Ioss_ElementPermutation.h:248
HexPermutation(const HexPermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:250
Definition Ioss_ElementPermutation.h:164
LinePermutation(const LinePermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:166
Definition Ioss_ElementPermutation.h:140
NullPermutation(const NullPermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:142
Definition Ioss_ElementPermutation.h:224
PyramidPermutation(const PyramidPermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:226
Definition Ioss_ElementPermutation.h:200
QuadPermutation(const QuadPermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:202
Definition Ioss_ElementPermutation.h:152
SpherePermutation(const SpherePermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:154
Definition Ioss_ElementPermutation.h:176
SpringPermutation(const SpringPermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:178
Definition Ioss_ElementPermutation.h:260
static const char * basename
Definition Ioss_ElementPermutation.h:262
SuperPermutation(const SuperPermutation &)=delete
Definition Ioss_ElementPermutation.h:212
static const char * name
Definition Ioss_ElementPermutation.h:214
TetPermutation(const TetPermutation &)=delete
Definition Ioss_ElementPermutation.h:188
TriPermutation(const TriPermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:190
Definition Ioss_ElementPermutation.h:236
WedgePermutation(const WedgePermutation &)=delete
static const char * name
Definition Ioss_ElementPermutation.h:238
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40
static constexpr Permutation InvalidPermutation
Definition Ioss_ElementPermutation.h:30
ElementPermutationMap::value_type EPM_VP
Definition Ioss_ElementPermutation.h:33
static constexpr Ordinal InvalidOrdinal
Definition Ioss_ElementPermutation.h:29
uint32_t Permutation
Definition Ioss_ElementPermutation.h:27
uint16_t Ordinal
Definition Ioss_ElementPermutation.h:26
std::map< std::string, ElementPermutation *, std::less<> > ElementPermutationMap
Definition Ioss_ElementPermutation.h:32
std::vector< std::string > NameList
Definition Ioss_CodeTypes.h:23