Go to the documentation of this file.
33 #ifndef IOSS_Ioss_Element_Topology_h
34 #define IOSS_Ioss_Element_Topology_h
41 class ElementTopology;
48 using ETM_VP = ElementTopologyMap::value_type;
56 ElementTopologyMap::iterator
find(
const std::string &type) {
return m_registry.find(type); }
75 void alias(
const std::string &base,
const std::string &syn);
76 bool is_alias(
const std::string &my_alias)
const;
105 virtual int order()
const = 0;
143 ElementTopology(std::string type, std::string master_elem_name,
bool delete_me =
false);
void insert(const Ioss::ETM_VP &value, bool delete_me)
Definition: Ioss_ElementTopology.C:46
std::vector< std::string > NameList
Definition: Ioss_CodeTypes.h:53
virtual int number_corner_nodes() const =0
virtual int number_faces() const =0
static unsigned int get_unique_id(const std::string &type)
Definition: Ioss_ElementTopology.C:149
IntVector boundary_connectivity(int edge_number) const
Definition: Ioss_ElementTopology.C:261
virtual IntVector face_edge_connectivity(int face_number) const
Definition: Ioss_ElementTopology.C:185
const std::string name_
Definition: Ioss_ElementTopology.h:146
ElementTopologyMap::iterator begin()
Definition: Ioss_ElementTopology.h:54
std::vector< int > IntVector
Definition: Ioss_CodeTypes.h:51
virtual IntVector element_connectivity() const =0
static int describe(NameList *names)
Get the names of element topologies known to Ioss.
Definition: Ioss_ElementTopology.C:175
std::vector< Ioss::ElementTopology * > m_deleteThese
Definition: Ioss_ElementTopology.h:63
Ioss::ElementTopologyMap m_registry
Definition: Ioss_ElementTopology.h:62
The main namespace for the Ioss library.
Definition: Ioad_DatabaseIO.C:66
std::map< std::string, std::string > customFieldTypes
Definition: Ioss_ElementTopology.h:59
std::string master_element_name() const
Definition: Ioss_ElementTopology.h:88
virtual ElementTopology * edge_type(int edge_number=0) const =0
~ETRegistry()
Definition: Ioss_ElementTopology.C:54
virtual int number_nodes_edge(int edge=0) const =0
virtual bool faces_similar() const
Definition: Ioss_ElementTopology.C:92
virtual int number_edges() const =0
virtual int number_nodes_face(int face=0) const =0
virtual bool edges_similar() const
Definition: Ioss_ElementTopology.C:91
ElementTopologyMap::iterator find(const std::string &type)
Definition: Ioss_ElementTopology.h:56
Definition: Ioss_ElementTopology.h:50
virtual int parametric_dimension() const =0
ElementTopology & operator=(const ElementTopology &)=delete
int number_boundaries() const
Definition: Ioss_ElementTopology.C:228
virtual int order() const =0
virtual IntVector edge_connectivity(int edge_number) const =0
virtual int number_edges_face(int face=0) const =0
virtual IntVector face_connectivity(int face_number) const =0
virtual ElementShape shape() const =0
Represents an element topology.
Definition: Ioss_ElementTopology.h:72
bool is_alias(const std::string &my_alias) const
Definition: Ioss_ElementTopology.C:211
const std::string & name() const
Definition: Ioss_ElementTopology.h:83
IntVector element_edge_connectivity() const
Definition: Ioss_ElementTopology.C:200
ElementTopology * boundary_type(int face_number=0) const
Definition: Ioss_ElementTopology.C:299
virtual int number_nodes() const =0
const std::string masterElementName_
Definition: Ioss_ElementTopology.h:147
std::map< std::string, ElementTopology *, std::less< std::string > > ElementTopologyMap
Definition: Ioss_ElementTopology.h:47
ElementTopologyMap::iterator end()
Definition: Ioss_ElementTopology.h:55
ElementShape
Definition: Ioss_ElementTopology.h:45
ElementTopologyMap::value_type ETM_VP
Definition: Ioss_ElementTopology.h:48
static ETRegistry & registry()
Definition: Ioss_ElementTopology.C:83
static ElementTopology * factory(const std::string &type, bool ok_to_fail=false)
Definition: Ioss_ElementTopology.C:94
virtual int spatial_dimension() const =0
virtual bool is_element() const
Definition: Ioss_ElementTopology.C:221
ElementTopology(const ElementTopology &)=delete
void alias(const std::string &base, const std::string &syn)
Definition: Ioss_ElementTopology.C:74
virtual ElementTopology * face_type(int face_number=0) const =0
virtual ~ElementTopology()