v0.14.0
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
MoFEM::RefEntityTmp< 0 > Struct Reference

Struct keeps handle to refined handle. More...

#include <src/multi_indices/RefEntsMultiIndices.hpp>

Inheritance diagram for MoFEM::RefEntityTmp< 0 >:
[legend]
Collaboration diagram for MoFEM::RefEntityTmp< 0 >:
[legend]

Public Member Functions

 RefEntityTmp (const boost::shared_ptr< BasicEntityData > &basic_data_ptr, const EntityHandle ent)
 
 RefEntityTmp (const boost::shared_ptr< BasicEntityData > &basic_data_ptr, const EntityHandle ent, EntityHandle *ent_parent_tag_ptr)
 
virtual ~RefEntityTmp ()=default
 
virtual const boost::shared_ptr< BasicEntityDatagetBasicDataPtr () const
 Get pointer to basic data struture. More...
 
int getSideNumber () const
 
boost::shared_ptr< SideNumbergetSideNumberPtr () const
 Get the Side number. More...
 
EntityHandle getEnt () const
 Get the entity handle. More...
 
EntityType getEntType () const
 Get entity type. More...
 
int getEntDimension () const
 Get the Ent Dimension. More...
 
const char * getEntTypeName () const
 Get the Ent Type Name. More...
 
EntityID getEntId () const
 get entity id More...
 
EntityHandle getOwnerEnt () const
 Owner handle on this or other processors. More...
 
int getOwnerProc () const
 
int getPartProc () const
 Get processor. More...
 
int * getPartProcPtr () const
 Get pointer to partition tag. More...
 
unsigned char getPStatus () const
 get pstatus This tag stores various aspects of parallel status in bits; see also define following, to be used in bit mask operations. If an entity is not shared with any other processors, the pstatus is 0, otherwise it's > 0 More...
 
int * getSharingProcsPtr () const
 get shared processors More...
 
EntityHandlegetSharingHandlersPtr () const
 get sharid entity handlers More...
 
EntityHandlegetParentEntPtr () const
 Get pointer to parent entity tag. More...
 
BitRefLevelgetBitRefLevelPtr () const
 Get pointer to bit ref level tag. More...
 
EntityType getParentEntType () const
 Get patent entity. More...
 
EntityHandle getParentEnt () const
 Get parent entity, i.e. entity form one refinement level up. More...
 
const BitRefLevelgetBitRefLevel () const
 Get entity ref bit refinement signature. More...
 
unsigned long int getBitRefLevelULong () const
 Get entity ref bit refinement as ulong. More...
 

Static Public Member Functions

static EntityHandle getOwnerEnt (const EntityHandle ent, boost::shared_ptr< BasicEntityData > basic_ent_data)
 
static int getOwnerProc (const EntityHandle ent, boost::shared_ptr< BasicEntityData > basic_ent_data)
 
static int getPartProc (const EntityHandle ent, const Tag th, const boost::shared_ptr< BasicEntityData > &basic_ptr)
 
static MoFEMErrorCode getParentEnt (Interface &moab, Range ents, std::vector< EntityHandle > vec_patent_ent)
 
static MoFEMErrorCode getBitRefLevel (Interface &moab, Range ents, std::vector< BitRefLevel > &vec_bit_ref_level)
 
static MoFEMErrorCode getBitRefLevel (Interface &moab, Range ents, std::vector< const BitRefLevel * > &vec_ptr_bit_ref_level)
 
static MoFEMErrorCode getBitRefLevel (Interface &moab, std::vector< EntityHandle > &ents, std::vector< const BitRefLevel * > &vec_ptr_bit_ref_level)
 

Public Attributes

EntityHandle ent
 

Static Public Attributes

static boost::weak_ptr< BasicEntityDatabasicDataPtr
 

Private Member Functions

const boost::shared_ptr< RefElementgetRefElementPtr () const
 Get the pointer to reference element. More...
 

Private Attributes

EntityHandleentParentTagPtr
 Tag ptr to parent entity handle. More...
 

Static Private Attributes

static boost::weak_ptr< RefElementrefElementPtr
 

Friends

struct EntFiniteElement
 
struct NumeredEntFiniteElement
 
std::ostream & operator<< (std::ostream &os, const RefEntityTmp &e)
 

Detailed Description

Struct keeps handle to refined handle.

Definition at line 141 of file RefEntsMultiIndices.hpp.

Constructor & Destructor Documentation

◆ RefEntityTmp() [1/2]

MoFEM::RefEntityTmp< 0 >::RefEntityTmp ( const boost::shared_ptr< BasicEntityData > &  basic_data_ptr,
const EntityHandle  ent 
)

Definition at line 25 of file RefEntsMultiIndices.cpp.

28 : ent(ent) {
30 basic_data_ptr->moab, basic_data_ptr->th_RefParentHandle, ent, NULL));
31}
void * get_tag_ptr(moab::Interface &moab, Tag th, EntityHandle ent, int *tag_size)
Get the tag ptr object.
EntityHandle * entParentTagPtr
Tag ptr to parent entity handle.

◆ RefEntityTmp() [2/2]

MoFEM::RefEntityTmp< 0 >::RefEntityTmp ( const boost::shared_ptr< BasicEntityData > &  basic_data_ptr,
const EntityHandle  ent,
EntityHandle ent_parent_tag_ptr 
)

Definition at line 33 of file RefEntsMultiIndices.cpp.

36 : ent(ent), entParentTagPtr(ent_parent_tag_ptr) {}

◆ ~RefEntityTmp()

virtual MoFEM::RefEntityTmp< 0 >::~RefEntityTmp ( )
virtualdefault

Member Function Documentation

◆ getBasicDataPtr()

virtual const boost::shared_ptr< BasicEntityData > MoFEM::RefEntityTmp< 0 >::getBasicDataPtr ( ) const
inlinevirtual

Get pointer to basic data struture.

Returns
const boost::shared_ptr<BasicEntityData>

Reimplemented in MoFEM::RefEntityTmp<-1 >.

Definition at line 156 of file RefEntsMultiIndices.hpp.

156 {
157 if (auto ptr = basicDataPtr.lock())
158 return ptr;
159 else
160 return nullptr;
161 }
static boost::weak_ptr< BasicEntityData > basicDataPtr

◆ getBitRefLevel() [1/4]

const BitRefLevel & MoFEM::RefEntityTmp< 0 >::getBitRefLevel ( ) const
inline

Get entity ref bit refinement signature.

Definition at line 509 of file RefEntsMultiIndices.hpp.

509 {
510 return *getBitRefLevelPtr();
511 }
BitRefLevel * getBitRefLevelPtr() const
Get pointer to bit ref level tag.

◆ getBitRefLevel() [2/4]

static MoFEMErrorCode MoFEM::RefEntityTmp< 0 >::getBitRefLevel ( Interface moab,
Range  ents,
std::vector< BitRefLevel > &  vec_bit_ref_level 
)
inlinestatic

Definition at line 433 of file RefEntsMultiIndices.hpp.

434 {
436 Tag th_ref_bit_level;
437 CHKERR moab.tag_get_handle("_RefBitLevel", th_ref_bit_level);
438 vec_bit_ref_level.resize(ents.size());
439 CHKERR moab.tag_get_data(th_ref_bit_level, ents,
440 &*vec_bit_ref_level.begin());
442 }
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:346
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:416
#define CHKERR
Inline error check.
Definition: definitions.h:535

◆ getBitRefLevel() [3/4]

static MoFEMErrorCode MoFEM::RefEntityTmp< 0 >::getBitRefLevel ( Interface moab,
Range  ents,
std::vector< const BitRefLevel * > &  vec_ptr_bit_ref_level 
)
inlinestatic

Definition at line 445 of file RefEntsMultiIndices.hpp.

446 {
448 Tag th_ref_bit_level;
449 CHKERR moab.tag_get_handle("_RefBitLevel", th_ref_bit_level);
450 vec_ptr_bit_ref_level.resize(ents.size());
451 CHKERR moab.tag_get_by_ptr(
452 th_ref_bit_level, ents,
453 reinterpret_cast<const void **>(&*vec_ptr_bit_ref_level.begin()));
455 }

◆ getBitRefLevel() [4/4]

static MoFEMErrorCode MoFEM::RefEntityTmp< 0 >::getBitRefLevel ( Interface moab,
std::vector< EntityHandle > &  ents,
std::vector< const BitRefLevel * > &  vec_ptr_bit_ref_level 
)
inlinestatic

Definition at line 458 of file RefEntsMultiIndices.hpp.

459 {
461 Tag th_ref_bit_level;
462 CHKERR moab.tag_get_handle("_RefBitLevel", th_ref_bit_level);
463 vec_ptr_bit_ref_level.resize(ents.size());
464 CHKERR moab.tag_get_by_ptr(
465 th_ref_bit_level, &*ents.begin(), ents.size(),
466 reinterpret_cast<const void **>(&*vec_ptr_bit_ref_level.begin()));
468 }

◆ getBitRefLevelPtr()

BitRefLevel * MoFEM::RefEntityTmp< 0 >::getBitRefLevelPtr ( ) const
inline

Get pointer to bit ref level tag.

Every entity belongs to some refinement level or levels. Each level is marked by bit set in BitRefLevel() (bitset) structure.

See Explaining mesh BitRefLevel for explanation.

Returns
Return pointer to tag.

Definition at line 491 of file RefEntsMultiIndices.hpp.

491 {
492 return static_cast<BitRefLevel *>(
493 get_tag_ptr(this->getBasicDataPtr()->moab,
494 this->getBasicDataPtr()->th_RefBitLevel, this->ent, NULL));
495 }
std::bitset< BITREFLEVEL_SIZE > BitRefLevel
Bit structure attached to each entity identifying to what mesh entity is attached.
Definition: Types.hpp:40
virtual const boost::shared_ptr< BasicEntityData > getBasicDataPtr() const
Get pointer to basic data struture.

◆ getBitRefLevelULong()

unsigned long int MoFEM::RefEntityTmp< 0 >::getBitRefLevelULong ( ) const
inline

Get entity ref bit refinement as ulong.

Definition at line 515 of file RefEntsMultiIndices.hpp.

515 {
516 return getBitRefLevel().to_ulong();
517 }
const BitRefLevel & getBitRefLevel() const
Get entity ref bit refinement signature.

◆ getEnt()

EntityHandle MoFEM::RefEntityTmp< 0 >::getEnt ( ) const
inline

Get the entity handle.

Returns
EntityHandle

Definition at line 177 of file RefEntsMultiIndices.hpp.

177{ return this->ent; }

◆ getEntDimension()

int MoFEM::RefEntityTmp< 0 >::getEntDimension ( ) const
inline

Get the Ent Dimension.

Returns
int

Definition at line 190 of file RefEntsMultiIndices.hpp.

190 {
191 return dimension_from_handle(this->ent);
192 }
auto dimension_from_handle(const EntityHandle h)
get entity dimension form handle
Definition: Templates.hpp:1795

◆ getEntId()

EntityID MoFEM::RefEntityTmp< 0 >::getEntId ( ) const
inline

get entity id

Definition at line 205 of file RefEntsMultiIndices.hpp.

205{ return id_from_handle(this->ent); }
auto id_from_handle(const EntityHandle h)
Definition: Templates.hpp:1771

◆ getEntType()

EntityType MoFEM::RefEntityTmp< 0 >::getEntType ( ) const
inline

Get entity type.

Definition at line 181 of file RefEntsMultiIndices.hpp.

181 {
182 return type_from_handle(this->ent);
183 }
auto type_from_handle(const EntityHandle h)
get type from entity handle
Definition: Templates.hpp:1779

◆ getEntTypeName()

const char * MoFEM::RefEntityTmp< 0 >::getEntTypeName ( ) const
inline

Get the Ent Type Name.

Returns
const char*

Definition at line 199 of file RefEntsMultiIndices.hpp.

199 {
200 return type_name_from_handle(this->ent);
201 }
auto type_name_from_handle(const EntityHandle h)
get entity type name from handle
Definition: Templates.hpp:1803

◆ getOwnerEnt() [1/2]

EntityHandle MoFEM::RefEntityTmp< 0 >::getOwnerEnt ( ) const
inline

Owner handle on this or other processors.

Definition at line 240 of file RefEntsMultiIndices.hpp.

240 {
241 return getOwnerEnt(this->ent, this->getBasicDataPtr());
242 }
EntityHandle getOwnerEnt() const
Owner handle on this or other processors.

◆ getOwnerEnt() [2/2]

static EntityHandle MoFEM::RefEntityTmp< 0 >::getOwnerEnt ( const EntityHandle  ent,
boost::shared_ptr< BasicEntityData basic_ent_data 
)
inlinestatic

Definition at line 208 of file RefEntsMultiIndices.hpp.

209 {
210 auto *pcomm =
211 ParallelComm::get_pcomm(&basic_ent_data->moab, basic_ent_data->pcommID);
212
213 auto get_owner_ent = [&](auto tag) {
214 if (auto owner_ent_ptr = static_cast<EntityHandle *>(
215 MoFEM::get_tag_ptr(basic_ent_data->moab, tag, ent, NULL))) {
216 return owner_ent_ptr[0];
217 } else {
218 return ent;
219 }
220 };
221
222 if (auto pstat_ptr = static_cast<unsigned char *>(MoFEM::get_tag_ptr(
223 basic_ent_data->moab, pcomm->pstatus_tag(), ent, NULL))) {
224 if (!(*pstat_ptr & PSTATUS_NOT_OWNED)) {
225 return ent;
226 } else if (*pstat_ptr & PSTATUS_MULTISHARED) {
227 return get_owner_ent(pcomm->sharedhs_tag());
228 } else if (*pstat_ptr & PSTATUS_SHARED) {
229 return get_owner_ent(pcomm->sharedh_tag());
230 } else {
231 return ent;
232 }
233 } else {
234 return ent;
235 }
236 }

◆ getOwnerProc() [1/2]

int MoFEM::RefEntityTmp< 0 >::getOwnerProc ( ) const
inline

Definition at line 275 of file RefEntsMultiIndices.hpp.

275 {
276 return getOwnerProc(this->ent, this->getBasicDataPtr());
277 }

◆ getOwnerProc() [2/2]

static int MoFEM::RefEntityTmp< 0 >::getOwnerProc ( const EntityHandle  ent,
boost::shared_ptr< BasicEntityData basic_ent_data 
)
inlinestatic

Definition at line 245 of file RefEntsMultiIndices.hpp.

246 {
247 auto *pcomm =
248 ParallelComm::get_pcomm(&basic_ent_data->moab, basic_ent_data->pcommID);
249
250 auto get_owner_proc = [&](auto tag) {
251 if (auto owner_proc = static_cast<int *>(
252 MoFEM::get_tag_ptr(basic_ent_data->moab, tag, ent, NULL))) {
253 return owner_proc[0];
254 } else {
255 return 0;
256 }
257 };
258
259 if (auto pstat_ptr = static_cast<unsigned char *>(MoFEM::get_tag_ptr(
260 basic_ent_data->moab, pcomm->pstatus_tag(), ent, NULL))) {
261 if (!(*pstat_ptr & PSTATUS_NOT_OWNED)) {
262 return pcomm->rank();
263 } else if (*pstat_ptr & PSTATUS_MULTISHARED) {
264 return get_owner_proc(pcomm->sharedps_tag());
265 } else if (*pstat_ptr & PSTATUS_SHARED) {
266 return get_owner_proc(pcomm->sharedp_tag());
267 } else {
268 return 0;
269 }
270 } else {
271 return 0;
272 }
273 }

◆ getParentEnt() [1/2]

EntityHandle MoFEM::RefEntityTmp< 0 >::getParentEnt ( ) const
inline

Get parent entity, i.e. entity form one refinement level up.

Definition at line 505 of file RefEntsMultiIndices.hpp.

505{ return *(getParentEntPtr()); }
EntityHandle * getParentEntPtr() const
Get pointer to parent entity tag.

◆ getParentEnt() [2/2]

static MoFEMErrorCode MoFEM::RefEntityTmp< 0 >::getParentEnt ( Interface moab,
Range  ents,
std::vector< EntityHandle vec_patent_ent 
)
static

◆ getParentEntPtr()

EntityHandle * MoFEM::RefEntityTmp< 0 >::getParentEntPtr ( ) const
inline

Get pointer to parent entity tag.

Each refined entity has his parent. Such information is stored on tags. This function get pinter to tag.

Returns
Pointer to tag on entity

Definition at line 478 of file RefEntsMultiIndices.hpp.

478{ return entParentTagPtr; }

◆ getParentEntType()

EntityType MoFEM::RefEntityTmp< 0 >::getParentEntType ( ) const
inline

Get patent entity.

Definition at line 499 of file RefEntsMultiIndices.hpp.

499 {
501 }
#define MB_ID_WIDTH
Definition: definitions.h:227
#define MB_TYPE_MASK
Definition: definitions.h:228
EntityHandle getParentEnt() const
Get parent entity, i.e. entity form one refinement level up.

◆ getPartProc() [1/2]

int MoFEM::RefEntityTmp< 0 >::getPartProc ( ) const
inline

Get processor.

Definition at line 291 of file RefEntsMultiIndices.hpp.

291 {
292 if (PetscUnlikely(getEntType() == MBENTITYSET)) {
293 return getPartProc(ent, this->getBasicDataPtr()->th_MeshsetPart,
294 this->getBasicDataPtr());
295 } else {
296 auto *pcomm = ParallelComm::get_pcomm(&this->getBasicDataPtr()->moab,
297 this->getBasicDataPtr()->pcommID);
298 return getPartProc(ent, pcomm->partition_tag(), this->getBasicDataPtr());
299 }
300 }
int getPartProc() const
Get processor.
EntityType getEntType() const
Get entity type.

◆ getPartProc() [2/2]

static int MoFEM::RefEntityTmp< 0 >::getPartProc ( const EntityHandle  ent,
const Tag  th,
const boost::shared_ptr< BasicEntityData > &  basic_ptr 
)
inlinestatic

Definition at line 280 of file RefEntsMultiIndices.hpp.

281 {
282 if (auto part_ptr = static_cast<int *>(
283 MoFEM::get_tag_ptr(basic_ptr->moab, th, ent, NULL))) {
284 return *part_ptr >= 0 ? *part_ptr : 0;
285 } else
286 return 0;
287 };

◆ getPartProcPtr()

int * MoFEM::RefEntityTmp< 0 >::getPartProcPtr ( ) const
inline

Get pointer to partition tag.

Returns
int*

Definition at line 307 of file RefEntsMultiIndices.hpp.

307 {
308 if (PetscUnlikely(getEntType() == MBENTITYSET)) {
309 return static_cast<int *>(MoFEM::get_tag_ptr(
310 this->getBasicDataPtr()->moab,
311 this->getBasicDataPtr()->th_MeshsetPart, ent, NULL));
312 } else {
313 auto *pcomm = ParallelComm::get_pcomm(&this->getBasicDataPtr()->moab,
314 this->getBasicDataPtr()->pcommID);
315 return static_cast<int *>(MoFEM::get_tag_ptr(
316 this->getBasicDataPtr()->moab, pcomm->partition_tag(), ent, NULL));
317 }
318 }

◆ getPStatus()

unsigned char MoFEM::RefEntityTmp< 0 >::getPStatus ( ) const
inline

get pstatus This tag stores various aspects of parallel status in bits; see also define following, to be used in bit mask operations. If an entity is not shared with any other processors, the pstatus is 0, otherwise it's > 0

bit 0: !owned (0=owned, 1=not owned) bit 1: shared (0=not shared, 1=shared) bit 2: multishared (shared by > 2 procs; 0=not shared, 1=shared) bit 3: interface (0=not interface, 1=interface) bit 4: ghost (0=not ghost, 1=ghost)

Definition at line 333 of file RefEntsMultiIndices.hpp.

333 {
334 auto *pcomm = ParallelComm::get_pcomm(&this->getBasicDataPtr()->moab,
335 this->getBasicDataPtr()->pcommID);
336 if (auto pstat_ptr = static_cast<unsigned char *>(MoFEM::get_tag_ptr(
337 this->getBasicDataPtr()->moab, pcomm->pstatus_tag(), ent, NULL))) {
338 return *pstat_ptr;
339 } else {
340 return 0;
341 }
342 }

◆ getRefElementPtr()

const boost::shared_ptr< RefElement > MoFEM::RefEntityTmp< 0 >::getRefElementPtr ( ) const
inlineprivate

Get the pointer to reference element.

Returns
const boost::shared_ptr<RefElement>

Definition at line 533 of file RefEntsMultiIndices.hpp.

533 {
534 if (auto ptr = refElementPtr.lock())
535 return ptr;
536 else
537 return nullptr;
538 }
static boost::weak_ptr< RefElement > refElementPtr

◆ getSharingHandlersPtr()

EntityHandle * MoFEM::RefEntityTmp< 0 >::getSharingHandlersPtr ( ) const
inline

get sharid entity handlers

Returning list to shared entity handlers. Use it with getSharingProcsPtr()

DO NOT MODIFY LIST.

BasicEntity *ent_ptr = BasicEntity(moab,entity_handle);
for(int proc = 0; proc<MAX_SHARING_PROCS && -1 !=
ent_ptr->getSharingProcsPtr[proc]; proc++) {
if(ent_ptr->getSharingProcsPtr[proc] == -1) {
// End of the list
break;
}
int sharing_proc = ent_ptr->getSharingProcsPtr[proc];
EntityHandle sharing_ent = ent_ptr->getSharingHandlersPtr[proc];
if(!(ent_ptr->getPStatus()&PSTATUS_MULTISHARED)) {
break;
}
}

Definition at line 410 of file RefEntsMultiIndices.hpp.

410 {
411 EntityHandle *sharing_handlers_ptr = NULL;
412 auto &moab = this->getBasicDataPtr()->moab;
413 ParallelComm *pcomm =
414 ParallelComm::get_pcomm(&moab, this->getBasicDataPtr()->pcommID);
415 if (getPStatus() & PSTATUS_MULTISHARED) {
416 // entity is multi shared
417 rval = moab.tag_get_by_ptr(pcomm->sharedhs_tag(), &this->ent, 1,
418 (const void **)&sharing_handlers_ptr);
420 } else if (getPStatus() & PSTATUS_SHARED) {
421 // shared
422 rval = moab.tag_get_by_ptr(pcomm->sharedh_tag(), &this->ent, 1,
423 (const void **)&sharing_handlers_ptr);
425 }
426 return sharing_handlers_ptr;
427 }
#define MOAB_THROW(err)
Check error code of MoAB function and throw MoFEM exception.
Definition: definitions.h:541
static MoFEMErrorCodeGeneric< moab::ErrorCode > rval
Definition: Exceptions.hpp:74
unsigned char getPStatus() const
get pstatus This tag stores various aspects of parallel status in bits; see also define following,...

◆ getSharingProcsPtr()

int * MoFEM::RefEntityTmp< 0 >::getSharingProcsPtr ( ) const
inline

get shared processors

Returning list to shared processors. Lists end with -1. Returns NULL if not sharing processors.

DO NOT MODIFY LIST.

BasicEntity *ent_ptr = BasicEntity(moab,entity_handle);
for(int proc = 0; proc<MAX_SHARING_PROCS && -1 !=
ent_ptr->getSharingProcsPtr[proc]; proc++) {
if(ent_ptr->getSharingProcsPtr[proc] == -1) {
// End of the list
break;
}
int sharing_proc = ent_ptr->getSharingProcsPtr[proc];
EntityHandle sharing_ent = ent_ptr->getSharingHandlersPtr[proc];
if(!(ent_ptr->getPStatus()&PSTATUS_MULTISHARED)) {
break;
}
}

Definition at line 368 of file RefEntsMultiIndices.hpp.

368 {
369 auto &moab = this->getBasicDataPtr()->moab;
370 int *sharing_procs_ptr = NULL;
371 ParallelComm *pcomm =
372 ParallelComm::get_pcomm(&moab, this->getBasicDataPtr()->pcommID);
373 if (getPStatus() & PSTATUS_MULTISHARED) {
374 // entity is multi shared
375 rval = moab.tag_get_by_ptr(pcomm->sharedps_tag(), &this->ent, 1,
376 (const void **)&sharing_procs_ptr);
378 } else if (getPStatus() & PSTATUS_SHARED) {
379 // shared
380 rval = moab.tag_get_by_ptr(pcomm->sharedp_tag(), &this->ent, 1,
381 (const void **)&sharing_procs_ptr);
383 }
384 return sharing_procs_ptr;
385 }

◆ getSideNumber()

int MoFEM::RefEntityTmp< 0 >::getSideNumber ( ) const

Definition at line 38 of file RefEntsMultiIndices.cpp.

38 {
39 return getRefElementPtr()->getSideNumberPtr(ent)->side_number;
40}
const boost::shared_ptr< RefElement > getRefElementPtr() const
Get the pointer to reference element.

◆ getSideNumberPtr()

boost::shared_ptr< SideNumber > MoFEM::RefEntityTmp< 0 >::getSideNumberPtr ( ) const

Get the Side number.

Returns
int

Definition at line 42 of file RefEntsMultiIndices.cpp.

42 {
43 return getRefElementPtr()->getSideNumberPtr(ent);
44}

Friends And Related Function Documentation

◆ EntFiniteElement

friend struct EntFiniteElement
friend

Definition at line 525 of file RefEntsMultiIndices.hpp.

◆ NumeredEntFiniteElement

friend struct NumeredEntFiniteElement
friend

Definition at line 526 of file RefEntsMultiIndices.hpp.

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const RefEntityTmp< 0 > &  e 
)
friend

Member Data Documentation

◆ basicDataPtr

boost::weak_ptr< BasicEntityData > MoFEM::RefEntityTmp< 0 >::basicDataPtr
static

Definition at line 522 of file RefEntsMultiIndices.hpp.

◆ ent

Definition at line 521 of file RefEntsMultiIndices.hpp.

◆ entParentTagPtr

EntityHandle* MoFEM::RefEntityTmp< 0 >::entParentTagPtr
private

Tag ptr to parent entity handle.

Definition at line 541 of file RefEntsMultiIndices.hpp.

◆ refElementPtr

boost::weak_ptr< RefElement > MoFEM::RefEntityTmp< 0 >::refElementPtr
staticprivate

Definition at line 540 of file RefEntsMultiIndices.hpp.


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