v0.13.2
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Friends | List of all members
MoFEM::RefElement Struct Reference

keeps data about abstract refined finite element More...

#include <src/multi_indices/RefElementMultiIndices.hpp>

Inheritance diagram for MoFEM::RefElement:
[legend]
Collaboration diagram for MoFEM::RefElement:
[legend]

Public Types

typedef interface_RefEntity< RefEntityinterface_type_RefEntity
 

Public Member Functions

 RefElement (const boost::shared_ptr< RefEntity > &ref_ents_ptr)
 
virtual ~RefElement ()=default
 
virtual const BitRefEdgesgetBitRefEdges () const
 
virtual int getBitRefEdgesUlong () const
 
SideNumber_multiIndexgetSideNumberTable () const
 
virtual const boost::shared_ptr< SideNumber > & getSideNumberPtr (const EntityHandle ent) const
 
boost::shared_ptr< RefEntity > & getRefEntityPtr () const
 Get pointer to RefEntity. More...
 
- Public Member Functions inherited from MoFEM::interface_RefEntity< RefEntity >
 interface_RefEntity (const boost::shared_ptr< RefEntity > &sptr)
 
 interface_RefEntity (const interface_RefEntity< RefEntity > &interface)
 
virtual ~interface_RefEntity ()=default
 
int getSideNumber () const
 
boost::shared_ptr< SideNumbergetSideNumberPtr () const
 
const boost::shared_ptr< BasicEntityDatagetBasicDataPtr () const
 
EntityHandle getEnt () const
 
EntityType getParentEntType () const
 
EntityHandle getParentEnt () const
 
BitRefLevelgetBitRefLevelPtr () const
 
const BitRefLevelgetBitRefLevel () const
 
unsigned long int getBitRefLevelULong () const
 
EntityType getEntType () const
 
int getEntDimension () const
 
const char * getEntTypeName () const
 
EntityID getEntId () const
 
EntityHandle getOwnerEnt () const
 
EntityHandlegetOwnerEnt ()
 
int getOwnerProc () const
 
int getPartProc () const
 
int * getPartProcPtr () const
 
unsigned char getPStatus () const
 
int * getSharingProcsPtr () const
 
EntityHandlegetSharingHandlersPtr () const
 
boost::shared_ptr< RefEntity > & getRefEntityPtr () const
 

Public Attributes

SideNumber_multiIndex side_number_table
 
- Public Attributes inherited from MoFEM::interface_RefEntity< RefEntity >
boost::shared_ptr< RefEntitysPtr
 

Static Public Attributes

static BitRefEdges DummyBitRefEdges = BitRefEdges(0)
 
static const boost::shared_ptr< SideNumbernullSideNumber
 

Friends

std::ostream & operator<< (std::ostream &os, const RefElement &e)
 

Detailed Description

keeps data about abstract refined finite element

Definition at line 16 of file RefElementMultiIndices.hpp.

Member Typedef Documentation

◆ interface_type_RefEntity

Definition at line 18 of file RefElementMultiIndices.hpp.

Constructor & Destructor Documentation

◆ RefElement()

MoFEM::RefElement::RefElement ( const boost::shared_ptr< RefEntity > &  ref_ents_ptr)

Definition at line 15 of file RefElementMultiIndices.cpp.

16 : interface_RefEntity<RefEntity>(ref_ents_ptr) {}

◆ ~RefElement()

virtual MoFEM::RefElement::~RefElement ( )
virtualdefault

Member Function Documentation

◆ getBitRefEdges()

virtual const BitRefEdges & MoFEM::RefElement::getBitRefEdges ( ) const
inlinevirtual

Reimplemented in MoFEM::RefElement_PRISM, and MoFEM::RefElementVolume.

Definition at line 26 of file RefElementMultiIndices.hpp.

26{ return DummyBitRefEdges; }
static BitRefEdges DummyBitRefEdges

◆ getBitRefEdgesUlong()

virtual int MoFEM::RefElement::getBitRefEdgesUlong ( ) const
inlinevirtual

Reimplemented in MoFEM::RefElement_PRISM, and MoFEM::RefElementVolume.

Definition at line 28 of file RefElementMultiIndices.hpp.

28{ return 0; }

◆ getRefEntityPtr()

boost::shared_ptr< RefEntity > & MoFEM::RefElement::getRefEntityPtr ( ) const
inline

Get pointer to RefEntity.

Definition at line 45 of file RefElementMultiIndices.hpp.

45 {
46 return this->sPtr;
47 }

◆ getSideNumberPtr()

virtual const boost::shared_ptr< SideNumber > & MoFEM::RefElement::getSideNumberPtr ( const EntityHandle  ent) const
inlinevirtual

Reimplemented in MoFEM::RefElement_MESHSET, MoFEM::RefElement_PRISM, MoFEM::RefElementVolume, MoFEM::RefElementFace, MoFEM::RefElement_EDGE, and MoFEM::RefElement_VERTEX.

Definition at line 37 of file RefElementMultiIndices.hpp.

37 {
38 NOT_USED(ent);
39 return nullSideNumber;
40 };
#define NOT_USED(x)
Definition: definitions.h:242
static const boost::shared_ptr< SideNumber > nullSideNumber

◆ getSideNumberTable()

SideNumber_multiIndex & MoFEM::RefElement::getSideNumberTable ( ) const
inline

Definition at line 30 of file RefElementMultiIndices.hpp.

30 {
31 return const_cast<SideNumber_multiIndex &>(side_number_table);
32 }
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, signed char, &SideNumber::side_number > > > > > SideNumber_multiIndex
SideNumber_multiIndex for SideNumber.
SideNumber_multiIndex side_number_table

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const RefElement e 
)
friend

Definition at line 18 of file RefElementMultiIndices.cpp.

18 {
19 os << " ref egdes " << e.getBitRefEdges();
20 os << " " << *(e.sPtr);
21 return os;
22}

Member Data Documentation

◆ DummyBitRefEdges

BitRefEdges MoFEM::RefElement::DummyBitRefEdges = BitRefEdges(0)
static

Definition at line 20 of file RefElementMultiIndices.hpp.

◆ nullSideNumber

const boost::shared_ptr< SideNumber > MoFEM::RefElement::nullSideNumber
static
Initial value:
=
boost::shared_ptr<SideNumber>()

Definition at line 34 of file RefElementMultiIndices.hpp.

◆ side_number_table

SideNumber_multiIndex MoFEM::RefElement::side_number_table

Definition at line 22 of file RefElementMultiIndices.hpp.


The documentation for this struct was generated from the following files: