v0.10.0
Typedefs | Functions
Entities structures and multi-indices
Collaboration diagram for Entities structures and multi-indices:

Typedefs

typedef multi_index_container< boost::shared_ptr< FieldEntity >, indexed_by< ordered_unique< tag< Unique_mi_tag >, member< FieldEntity, UId, &FieldEntity::localUId > >, ordered_non_unique< tag< Ent_mi_tag >, const_mem_fun< FieldEntity::interface_type_RefEntity, EntityHandle, &FieldEntity::getEnt > > > > FieldEntity_multiIndex
 MultiIndex container keeps FieldEntity. More...
 
using MoFEM::FieldEntityByUId = FieldEntity_multiIndex::index< Unique_mi_tag >::type
 Entity index by field name. More...
 
typedef multi_index_container< boost::shared_ptr< SideNumber >, indexed_by< ordered_unique< member< SideNumber, EntityHandle, &SideNumber::ent > >, ordered_non_unique< composite_key< SideNumber, const_mem_fun< SideNumber, EntityType, &SideNumber::getEntType >, member< SideNumber, char, &SideNumber::side_number > > > > > SideNumber_multiIndex
 SideNumber_multiIndex for SideNumber. More...
 
using MoFEM::RefEntity_multiIndex_view_by_hashed_parent_entity = multi_index_container< boost::shared_ptr< RefEntity >, indexed_by< hashed_non_unique< const_mem_fun< RefEntity, EntityHandle, &RefEntity::getParentEnt > >, hashed_unique< tag< Composite_EntType_and_ParentEntType_mi_tag >, composite_key< boost::shared_ptr< RefEntity >, const_mem_fun< RefEntity, EntityHandle, &RefEntity::getEnt >, const_mem_fun< RefEntity, EntityHandle, &RefEntity::getParentEnt > >> > >
 multi-index view of RefEntity by parent entity More...
 
using MoFEM::RefEntity_multiIndex = multi_index_container< boost::shared_ptr< RefEntity >, indexed_by< ordered_unique< tag< Ent_mi_tag >, const_mem_fun< RefEntity, EntityHandle, &RefEntity::getEnt > >, ordered_non_unique< tag< Ent_Ent_mi_tag >, const_mem_fun< RefEntity, EntityHandle, &RefEntity::getParentEnt > >, ordered_non_unique< tag< Composite_EntType_and_ParentEntType_mi_tag >, composite_key< RefEntity, const_mem_fun< RefEntity, EntityType, &RefEntity::getEntType >, const_mem_fun< RefEntity, EntityType, &RefEntity::getParentEntType > > >, ordered_non_unique< tag< Composite_ParentEnt_And_EntType_mi_tag >, composite_key< RefEntity, const_mem_fun< RefEntity, EntityType, &RefEntity::getEntType >, const_mem_fun< RefEntity, EntityHandle, &RefEntity::getParentEnt > >> > >
 

Functions

struct MoFEM::__attribute__ ((__packed__)) SideNumber
 keeps information about side number for the finite element More...
 

Detailed Description

Typedef Documentation

◆ FieldEntity_multiIndex

typedef multi_index_container< boost::shared_ptr<FieldEntity>, indexed_by< ordered_unique<tag<Unique_mi_tag>, member<FieldEntity, UId, &FieldEntity::localUId> >, ordered_non_unique<tag<Ent_mi_tag>, const_mem_fun<FieldEntity::interface_type_RefEntity, EntityHandle, &FieldEntity::getEnt> > > > FieldEntity_multiIndex

MultiIndex container keeps FieldEntity.

Definition at line 407 of file FieldEntsMultiIndices.hpp.

◆ FieldEntityByUId

using MoFEM::FieldEntityByUId = typedef FieldEntity_multiIndex::index<Unique_mi_tag>::type

Entity index by field name.

Definition at line 413 of file FieldEntsMultiIndices.hpp.

◆ RefEntity_multiIndex

type multiIndex container for RefEntity

Parameters
hashed_uniqueEnt_mi_tag
ordered_non_uniqueMeshset_mi_tag
ordered_non_uniqueEnt_Ent_mi_tag
ordered_non_uniqueComposite_EntType_And_ParentEntType_mi_tag
ordered_non_uniqueComposite_ParentEnt_And_EntType_mi_tag

Definition at line 728 of file RefEntsMultiIndices.hpp.

◆ RefEntity_multiIndex_view_by_hashed_parent_entity

using MoFEM::RefEntity_multiIndex_view_by_hashed_parent_entity = typedef multi_index_container< boost::shared_ptr<RefEntity>, indexed_by< hashed_non_unique< const_mem_fun<RefEntity, EntityHandle, &RefEntity::getParentEnt> >, hashed_unique<tag<Composite_EntType_and_ParentEntType_mi_tag>, composite_key<boost::shared_ptr<RefEntity>, const_mem_fun<RefEntity, EntityHandle, &RefEntity::getEnt>, const_mem_fun<RefEntity, EntityHandle, &RefEntity::getParentEnt> >> > >

multi-index view of RefEntity by parent entity

Definition at line 767 of file RefEntsMultiIndices.hpp.

◆ SideNumber_multiIndex

typedef multi_index_container< boost::shared_ptr<SideNumber>, indexed_by< ordered_unique<member<SideNumber, EntityHandle, &SideNumber::ent> >, ordered_non_unique< composite_key< SideNumber, const_mem_fun<SideNumber, EntityType, &SideNumber::getEntType>, member<SideNumber, char, &SideNumber::side_number> > > > > SideNumber_multiIndex

SideNumber_multiIndex for SideNumber.

Definition at line 114 of file RefEntsMultiIndices.hpp.

Function Documentation

◆ __attribute__()

struct MoFEM::__attribute__ ( (__packed__)  )

keeps information about side number for the finite element

Definition at line 53 of file RefEntsMultiIndices.hpp.

70  {
71  EntityHandle ent;
72  char side_number;
73  char sense;
74  char offset;
75  char brother_side_number;
76 
77  inline EntityType getEntType() const {
78  return static_cast<EntityType>((ent & MB_TYPE_MASK) >> MB_ID_WIDTH);
79  }
80 
81  inline int getEntDimension() const {
82  return moab::CN::Dimension(getEntType());
83  }
84 
85  inline const char *getEntTypeName() const {
86  return moab::CN::EntityTypeName(getEntType());
87  }
88 
89  SideNumber(EntityHandle ent, int side_number, int sense, int offset)
90  : ent(ent), side_number(side_number), sense(sense), offset(offset),
91  brother_side_number(-1) {}
92 };
#define MB_ID_WIDTH
Definition: definitions.h:296
#define MB_TYPE_MASK
Definition: definitions.h:297