v0.16.3
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | Static Protected 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

using interface_type_RefEntity = interface_RefEntity< RefEntity >
 

Public Member Functions

 RefElement (const boost::shared_ptr< RefEntity > &ref_ents_ptr)
 
virtual ~RefElement ()=default
 
virtual const BitRefEdges & getBitRefEdges () const
 
virtual int getBitRefEdgesUlong () const
 
SideNumber_multiIndex & getSideNumberTable () const
 
virtual const boost::shared_ptr< SideNumber > & getSideNumberPtr (const EntityHandle ent) const
 
boost::shared_ptr< RefEntity > & getRefEntityPtr () const
 Get pointer to RefEntity.
 
- 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< SideNumber > getSideNumberPtr () const
 
const boost::shared_ptr< BasicEntityData > getBasicDataPtr () const
 
EntityHandle getEnt () const
 
EntityType getParentEntType () const
 
EntityHandle getParentEnt () const
 
BitRefLevel * getBitRefLevelPtr () const
 
const BitRefLevel & getBitRefLevel () const
 
unsigned long int getBitRefLevelULong () const
 
EntityType getEntType () const
 
int getEntDimension () const
 
const char * getEntTypeName () const
 
EntityID getEntId () const
 
EntityHandle getOwnerEnt () const
 
EntityHandle & getOwnerEnt ()
 
int getOwnerProc () const
 
int getPartProc () const
 
int * getPartProcPtr () const
 
unsigned char getPStatus () const
 
int * getSharingProcsPtr () const
 
EntityHandle * getSharingHandlersPtr () const
 
boost::shared_ptr< RefEntity > & getRefEntityPtr () const
 

Protected Attributes

SideNumber_multiIndex sideNumberTable
 

Static Protected Attributes

static BitRefEdges DummyBitRefEdges = BitRefEdges(0)
 
static const boost::shared_ptr< SideNumber > nullSideNumber
 

Friends

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

Additional Inherited Members

- Public Attributes inherited from MoFEM::interface_RefEntity< RefEntity >
boost::shared_ptr< RefEntity > sPtr
 

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 23 of file RefElementMultiIndices.hpp.

23{ return DummyBitRefEdges; }
static BitRefEdges DummyBitRefEdges

◆ getBitRefEdgesUlong()

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

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

Definition at line 25 of file RefElementMultiIndices.hpp.

25{ return 0; }

◆ getRefEntityPtr()

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

Get pointer to RefEntity.

Definition at line 40 of file RefElementMultiIndices.hpp.

40 {
41 return this->sPtr;
42 }

◆ 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 32 of file RefElementMultiIndices.hpp.

32 {
33 NOT_USED(ent);
34 return nullSideNumber;
35 };
#define NOT_USED(x)
static const boost::shared_ptr< SideNumber > nullSideNumber

◆ getSideNumberTable()

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

Definition at line 27 of file RefElementMultiIndices.hpp.

27 {
28 return const_cast<SideNumber_multiIndex &>(sideNumberTable);
29 }
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 sideNumberTable

Friends And Related Symbol 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)
staticprotected

Definition at line 49 of file RefElementMultiIndices.hpp.

◆ nullSideNumber

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

Definition at line 50 of file RefElementMultiIndices.hpp.

◆ sideNumberTable

SideNumber_multiIndex MoFEM::RefElement::sideNumberTable
protected

Definition at line 48 of file RefElementMultiIndices.hpp.


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