Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::ItemBase Class Reference

Base class for mesh entities. More...

#include <arcane/core/ItemInternal.h>

Inheritance diagram for Arcane::ItemBase:
Collaboration diagram for Arcane::ItemBase:

Public Member Functions

constexpr ItemBase (ItemBaseBuildInfo x)
 ItemBase (ItemInternal *x)
Int32 localId () const
 Local number (in the subdomain) of the entity.
ItemLocalId itemLocalId () const
 Local number (in the subdomain) of the entity.
ItemUniqueId uniqueId () const
 Unique number of the entity.
Int32 owner () const
 Number of the owning subdomain of the entity.
Int32 flags () const
 Flags of the entity.
Integer nbNode () const
 Number of nodes of the entity.
Integer nbEdge () const
 Number of edges of the entity or number of edges connected to the entity (for nodes).
Integer nbFace () const
 Number of faces of the entity or number of faces connected to the entity (for nodes and edges).
Integer nbCell () const
 Number of cells connected to the entity (for nodes, edges, and faces).
Int32 nbHParent () const
 Number of parents for AMR.
Int32 nbHChildren () const
 Number of children for AMR.
Integer nbParent () const
 Number of parent for sub-meshes.
Int16 typeId () const
 Type of the entity.
ItemTypeId itemTypeId () const
 Type of the entity.
ItemTypeInfotypeInfo () const
 Type of the entity.
Int32 level () const
bool isAncestor () const
bool hasHChildren () const
bool isActive () const
bool isSubactive () const
IItemFamilyfamily () const
 Family the entity belongs to.
eItemKind kind () const
 Kind of the entity.
bool null () const
 True if the entity is the null entity.
bool isNull () const
 True if the entity is the null entity.
bool isOwn () const
 True if the entity belongs to the subdomain.
bool isShared () const
 True if the entity is shared by other subdomains.
bool isSuppressed () const
 True if the entity is suppressed.
bool isDetached () const
 True if the entity is detached.
bool isBoundary () const
 true if the entity is on the boundary
ItemBase boundaryCell () const
 Cell connected to the entity if the entity is a boundary entity (0 if none).
ItemBase backCell () const
 Cell behind the entity (nullItem() if none).
Int32 backCellId () const
 Cell behind the entity (NULL_ITEM_LOCAL_ID if none).
ItemBase frontCell () const
 Cell in front of the entity (nullItem() if none).
Int32 frontCellId () const
 Cell in front of the entity (NULL_ITEM_LOCAL_ID if none).
ItemBase masterFace () const
bool isMasterFace () const
 true if it is the master face of an interface
bool isSlaveFace () const
 true if it is a slave face of an interface
Int32 parentId (Integer index) const
Int32 nodeId (Integer index) const
Int32 edgeId (Integer index) const
Int32 faceId (Integer index) const
Int32 cellId (Integer index) const
Int32 hParentId (Int32 index) const
Int32 hChildId (Int32 index) const
ItemInternalVectorView internalNodes () const
 Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane.
ItemInternalVectorView internalEdges () const
ItemInternalVectorView internalFaces () const
ItemInternalVectorView internalCells () const
impl::ItemIndexedListView< DynExtentnodeList () const
 Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane.
impl::ItemIndexedListView< DynExtentedgeList () const
impl::ItemIndexedListView< DynExtentfaceList () const
impl::ItemIndexedListView< DynExtentcellList () const
impl::ItemIndexedListView< DynExtentitemList (Node *) const
impl::ItemIndexedListView< DynExtentitemList (Edge *) const
impl::ItemIndexedListView< DynExtentitemList (Face *) const
impl::ItemIndexedListView< DynExtentitemList (Cell *) const
ItemBase nodeBase (Int32 index) const
ItemBase edgeBase (Int32 index) const
ItemBase faceBase (Int32 index) const
ItemBase cellBase (Int32 index) const
ItemBase hParentBase (Int32 index) const
ItemBase hChildBase (Int32 index) const
ItemBase parentBase (Int32 index) const
bool hasFlags (Int32 flags) const
 Returns whether the flags flags are set for the entity.
Int32 whichChildAmI (Int32 local_id) const
ItemBase topHParentBase () const
MutableItemBase toMutable ()
 Mutable interface of this entity.
ItemInternal * itemInternal () const
ItemInternalVectorView _internalActiveCells (Int32Array &local_ids) const

Private Member Functions

constexpr ItemBase (Int32 local_id, ItemSharedInfo *shared_info)
Int32 _nbLinearNode () const
ItemInternalConnectivityList_connectivity () const
void _setFromInternal (ItemBase *rhs)
void _setFromInternal (const ItemBase &rhs)
ItemInternalVectorView _internalActiveCells2 (Int32Array &local_ids) const
ItemInternal * _itemInternal () const

Private Attributes

friend MutableItemBase
Int32 m_local_id = NULL_ITEM_LOCAL_ID
 Local number (in the subdomain) of the entity.
Int32 m_padding = 0
 Field used only to explicitly manage alignment.
ItemSharedInfom_shared_info = nullptr
 Shared info between all entities with the same characteristics.

Friends

class ::Arcane::ItemInternal
class ::Arcane::Item
class ::Arcane::ItemInternalCompatibility
class ::Arcane::ItemEnumerator
class ::Arcane::Node
class ::Arcane::mesh::ItemFamily
class ::Arcane::mesh::MeshRefinement

Additional Inherited Members

Public Types inherited from Arcane::ItemFlags
enum  : FlagType {
  II_Boundary = 1 << 1 , II_HasFrontCell = 1 << 2 , II_HasBackCell = 1 << 3 , II_FrontCellIsFirst = 1 << 4 ,
  II_BackCellIsFirst = 1 << 5 , II_Own = 1 << 6 , II_Added = 1 << 7 , II_Suppressed = 1 << 8 ,
  II_Shared = 1 << 9 , II_SubDomainBoundary = 1 << 10 , II_JustAdded = 1 << 12 , II_NeedRemove = 1 << 13 ,
  II_SlaveFace = 1 << 14 , II_MasterFace = 1 << 15 , II_Detached = 1 << 16 , II_HasEdgeFor1DItems = 1 << 17 ,
  II_Coarsen = 1 << 18 , II_DoNothing = 1 << 19 , II_Refine = 1 << 20 , II_JustRefined = 1 << 21 ,
  II_JustCoarsened = 1 << 22 , II_Inactive = 1 << 23 , II_CoarsenInactive = 1 << 24 , II_Overlap = 1 << 25 ,
  II_InPatch = 1 << 26 , II_UserMark1 = 1 << 30 , II_UserMark2 = 1 << 31
}
using FlagType = Int32
Static Public Member Functions inherited from Arcane::ItemFlags
static constexpr bool isOwn (FlagType f)
static constexpr bool isShared (FlagType f)
static constexpr bool isBoundary (FlagType f)
static constexpr bool isSubDomainBoundary (FlagType f)
static constexpr bool hasBackCell (FlagType f)
static constexpr bool isSubDomainBoundaryOutside (FlagType f)
static constexpr Int32 backCellIndex (FlagType f)
 Index in the face for the back cell.
static constexpr Int32 frontCellIndex (FlagType f)
 Index in the face for the front cell.
Static Public Attributes inherited from Arcane::ItemFlags
static const int II_InterfaceFlags

Detailed Description

Base class for mesh entities.

This class is internal to Arcane.

This class is normally internal to Arcane, and it is preferable to use specialized versions such as Item, Node, Face, Edge, Cell, Particle, or DoF.

Instances of this class are temporary objects that should not be retained between two topological modifications of the mesh if compressions (IItemFamily::compactItems()) occur during these modifications.

All methods of this class are read-only and do not allow modification of an entity.

Definition at line 449 of file ItemInternal.h.

Constructor & Destructor Documentation

◆ ItemBase() [1/4]

Arcane::ItemBase::ItemBase ( Int32 local_id,
ItemSharedInfo * shared_info )
inlineconstexprprivate

Definition at line 466 of file ItemInternal.h.

◆ ItemBase() [2/4]

Arcane::ItemBase::ItemBase ( )
inline

Definition at line 473 of file ItemInternal.h.

◆ ItemBase() [3/4]

Arcane::ItemBase::ItemBase ( ItemBaseBuildInfo x)
inlineconstexpr

Definition at line 476 of file ItemInternal.h.

◆ ItemBase() [4/4]

Arcane::ItemBase::ItemBase ( ItemInternal * x)
inline

Definition at line 1112 of file ItemInternal.h.

Member Function Documentation

◆ _connectivity()

ItemInternalConnectivityList * Arcane::ItemBase::_connectivity ( ) const
inlineprivate

Definition at line 775 of file ItemInternal.h.

◆ _internalActiveCells()

ItemInternalVectorView Arcane::ItemBase::_internalActiveCells ( Int32Array & local_ids) const
inline

Definition at line 748 of file ItemInternal.h.

◆ _internalActiveCells2()

ItemInternalVectorView Arcane::impl::ItemBase::_internalActiveCells2 ( Int32Array & local_ids) const
private

Definition at line 180 of file ItemInternal.cc.

◆ _itemInternal()

ItemInternal * Arcane::impl::ItemBase::_itemInternal ( ) const
inlineprivate

Definition at line 1159 of file ItemInternal.h.

◆ _nbLinearNode()

Int32 Arcane::impl::ItemBase::_nbLinearNode ( ) const
private

Definition at line 85 of file ItemInternal.cc.

◆ _setFromInternal() [1/2]

void Arcane::ItemBase::_setFromInternal ( const ItemBase & rhs)
inlineprivate

Definition at line 784 of file ItemInternal.h.

◆ _setFromInternal() [2/2]

void Arcane::ItemBase::_setFromInternal ( ItemBase * rhs)
inlineprivate

Definition at line 779 of file ItemInternal.h.

◆ backCell()

ItemBase Arcane::ItemBase::backCell ( ) const
inline

Cell behind the entity (nullItem() if none).

Definition at line 622 of file ItemInternal.h.

References flags(), Arcane::ItemFlags::II_BackCellIsFirst, and Arcane::ItemFlags::II_HasBackCell.

Here is the call graph for this function:

◆ backCellId()

Int32 Arcane::ItemBase::backCellId ( ) const
inline

Cell behind the entity (NULL_ITEM_LOCAL_ID if none).

Definition at line 629 of file ItemInternal.h.

References flags(), Arcane::ItemFlags::II_BackCellIsFirst, and Arcane::ItemFlags::II_HasBackCell.

Here is the call graph for this function:

◆ boundaryCell()

ItemBase Arcane::ItemBase::boundaryCell ( ) const
inline

Cell connected to the entity if the entity is a boundary entity (0 if none).

Definition at line 620 of file ItemInternal.h.

References flags(), and Arcane::ItemFlags::II_Boundary.

Here is the call graph for this function:

◆ cellBase()

ItemBase Arcane::ItemBase::cellBase ( Int32 index) const
inline

Definition at line 716 of file ItemInternal.h.

◆ cellId()

Int32 Arcane::ItemBase::cellId ( Integer index) const
inline

Definition at line 667 of file ItemInternal.h.

◆ cellList()

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::cellList ( ) const
inline

Definition at line 705 of file ItemInternal.h.

◆ edgeBase()

ItemBase Arcane::ItemBase::edgeBase ( Int32 index) const
inline

Definition at line 714 of file ItemInternal.h.

◆ edgeId()

Int32 Arcane::ItemBase::edgeId ( Integer index) const
inline

Definition at line 665 of file ItemInternal.h.

◆ edgeList()

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::edgeList ( ) const
inline

Definition at line 703 of file ItemInternal.h.

◆ faceBase()

ItemBase Arcane::ItemBase::faceBase ( Int32 index) const
inline

Definition at line 715 of file ItemInternal.h.

◆ faceId()

Int32 Arcane::ItemBase::faceId ( Integer index) const
inline

Definition at line 666 of file ItemInternal.h.

◆ faceList()

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::faceList ( ) const
inline

Definition at line 704 of file ItemInternal.h.

◆ family()

IItemFamily * Arcane::ItemBase::family ( ) const
inline

Family the entity belongs to.

Definition at line 595 of file ItemInternal.h.

References m_shared_info.

Referenced by Arcane::ItemPrinter::Internal::_printErrors().

Here is the caller graph for this function:

◆ flags()

Int32 Arcane::ItemBase::flags ( ) const
inline

Flags of the entity.

Definition at line 509 of file ItemInternal.h.

References m_local_id, and m_shared_info.

Referenced by Arcane::mesh::MeshRefinement::_checkUnflagged(), Arcane::mesh::MeshRefinement::_coarsenItems(), Arcane::mesh::FaceUniqueIdBuilder::_computeFacesUniqueIdsParallelV1(), Arcane::mesh::MeshRefinement::_contract(), Arcane::mesh::MeshRefinement::_makeCoarseningCompatible(), Arcane::mesh::MeshRefinement::_makeFlagParallelConsistent(), Arcane::mesh::MeshRefinement::_makeRefinementCompatible(), Arcane::mesh::GhostLayerBuilder2::_markBoundaryItems(), Arcane::mesh::MeshRefinement::_refineItems(), Arcane::MutableItemBase::addFlags(), Arcane::mesh::GhostLayerBuilder2::addGhostLayers(), backCell(), Arcane::ItemInternal::backCell(), backCellId(), boundaryCell(), Arcane::ItemInternal::boundaryCell(), Arcane::CartesianMeshAMRPatchMng::coarsen(), Arcane::mesh::MeshRefinement::coarsenItemsV2(), Arcane::mesh::ItemRefinement::coarsenOneCell(), Arcane::CartesianMeshCoarsening::createCoarseCells(), Arcane::CartesianMeshAMRPatchMng::createSubLevel(), frontCell(), Arcane::ItemInternal::frontCell(), frontCellId(), hasFlags(), isActive(), isBoundary(), isDetached(), isMasterFace(), isOwn(), isShared(), isSlaveFace(), isSuppressed(), Arcane::mesh::ParallelAMRConsistency::makeNewItemsConsistent(), Arcane::mesh::ParallelAMRConsistency::makeNewItemsConsistent2(), Arcane::mesh::ItemFamily::prepareForDump(), Arcane::CartesianMeshAMRPatchMng::refine(), Arcane::mesh::ItemRefinement::refineOneCell(), Arcane::MutableItemBase::removeFlags(), Arcane::mesh::DynamicMeshIncrementalBuilder::removeNeedRemoveMarkedItems(), Arcane::mesh::ItemFamily::removeNeedRemoveMarkedItems(), Arcane::mesh::ParticleFamily::removeNeedRemoveMarkedItems(), Arcane::CartesianMeshNumberingMngInternal::setChildNodeCoordinates(), Arcane::MutableItemBase::setDetached(), Arcane::MutableItemBase::setOwner(), and Arcane::CartesianMeshNumberingMngInternal::setParentNodeCoordinates().

Here is the caller graph for this function:

◆ frontCell()

ItemBase Arcane::ItemBase::frontCell ( ) const
inline

Cell in front of the entity (nullItem() if none).

Definition at line 636 of file ItemInternal.h.

References flags(), Arcane::ItemFlags::II_FrontCellIsFirst, and Arcane::ItemFlags::II_HasFrontCell.

Here is the call graph for this function:

◆ frontCellId()

Int32 Arcane::ItemBase::frontCellId ( ) const
inline

Cell in front of the entity (NULL_ITEM_LOCAL_ID if none).

Definition at line 643 of file ItemInternal.h.

References flags(), Arcane::ItemFlags::II_FrontCellIsFirst, and Arcane::ItemFlags::II_HasFrontCell.

Here is the call graph for this function:

◆ hasFlags()

bool Arcane::ItemBase::hasFlags ( Int32 flags) const
inline

Returns whether the flags flags are set for the entity.

Definition at line 722 of file ItemInternal.h.

References flags().

Here is the call graph for this function:

◆ hasHChildren()

bool Arcane::ItemBase::hasHChildren ( ) const
inline
Returns
true if the item has children (active or not), false otherwise. Always returns false if AMR is disabled.

Definition at line 563 of file ItemInternal.h.

References nbHChildren().

Referenced by isAncestor(), isSubactive(), whichChildAmI(), and Arcane::ItemInternal::whichChildAmI().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hChildBase()

ItemBase Arcane::ItemBase::hChildBase ( Int32 index) const
inline

Definition at line 718 of file ItemInternal.h.

◆ hChildId()

Int32 Arcane::ItemBase::hChildId ( Int32 index) const
inline

Definition at line 669 of file ItemInternal.h.

◆ hParentBase()

ItemBase Arcane::ItemBase::hParentBase ( Int32 index) const
inline

Definition at line 717 of file ItemInternal.h.

◆ hParentId()

Int32 Arcane::ItemBase::hParentId ( Int32 index) const
inline

Definition at line 668 of file ItemInternal.h.

◆ internalCells()

ItemInternalVectorView Arcane::ItemBase::internalCells ( ) const
inline

Definition at line 689 of file ItemInternal.h.

◆ internalEdges()

ItemInternalVectorView Arcane::ItemBase::internalEdges ( ) const
inline

Definition at line 685 of file ItemInternal.h.

◆ internalFaces()

ItemInternalVectorView Arcane::ItemBase::internalFaces ( ) const
inline

Definition at line 687 of file ItemInternal.h.

◆ internalNodes()

ItemInternalVectorView Arcane::ItemBase::internalNodes ( ) const
inline

Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane.

Warning
These methods must only be called on entities that possess the associated connectivity AND are in the new format. For example, this does not work on Cell->Cell because there is no cell/cell connectivity. Misuse results in an array overflow.

Definition at line 683 of file ItemInternal.h.

References internalNodes(), and m_local_id.

Referenced by internalNodes().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isActive()

bool Arcane::ItemBase::isActive ( ) const
inline
Returns
true if the item is active (i.e., has no active descendants), false otherwise. Note that it is sufficient to check only the first child. Always returns true if AMR is disabled.

Definition at line 574 of file ItemInternal.h.

References flags(), Arcane::ItemFlags::II_CoarsenInactive, and Arcane::ItemFlags::II_Inactive.

Referenced by Arcane::mesh::MeshRefinement::_contract(), isAncestor(), and isSubactive().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isAncestor()

bool Arcane::ItemBase::isAncestor ( ) const
inline
Returns
true if the item is an ancestor (i.e., has an active child or an ancestor child), false otherwise. Always returns false if AMR is disabled.

Definition at line 551 of file ItemInternal.h.

References hasHChildren(), and isActive().

Referenced by Arcane::mesh::MeshRefinement::_contract(), and Arcane::mesh::DynamicMesh::updateGhostLayerFromParent().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isBoundary()

bool Arcane::ItemBase::isBoundary ( ) const
inline

true if the entity is on the boundary

Definition at line 618 of file ItemInternal.h.

References flags().

Here is the call graph for this function:

◆ isDetached()

bool Arcane::ItemBase::isDetached ( ) const
inline

True if the entity is detached.

Definition at line 615 of file ItemInternal.h.

References flags(), and Arcane::ItemFlags::II_Detached.

Referenced by Arcane::mesh::ItemFamily::removeItems2().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isMasterFace()

bool Arcane::ItemBase::isMasterFace ( ) const
inline

true if it is the master face of an interface

Definition at line 656 of file ItemInternal.h.

References flags(), and Arcane::ItemFlags::II_MasterFace.

Here is the call graph for this function:

◆ isNull()

bool Arcane::ItemBase::isNull ( ) const
inline

True if the entity is the null entity.

Definition at line 601 of file ItemInternal.h.

References m_local_id.

◆ isOwn()

bool Arcane::ItemBase::isOwn ( ) const
inline

True if the entity belongs to the subdomain.

Definition at line 603 of file ItemInternal.h.

References flags().

Referenced by Arcane::mesh::MeshRefinement::_contract(), Arcane::ItemPrinter::Internal::_printErrors(), and Arcane::mesh::DynamicMeshKindInfos::checkValid().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isShared()

bool Arcane::ItemBase::isShared ( ) const
inline

True if the entity is shared by other subdomains.

This method is only relevant if the connectivity information has been calculated.

Definition at line 610 of file ItemInternal.h.

References flags().

Here is the call graph for this function:

◆ isSlaveFace()

bool Arcane::ItemBase::isSlaveFace ( ) const
inline

true if it is a slave face of an interface

Definition at line 659 of file ItemInternal.h.

References flags(), and Arcane::ItemFlags::II_SlaveFace.

Here is the call graph for this function:

◆ isSubactive()

bool Arcane::ItemBase::isSubactive ( ) const
inline
Returns
true if the item is subactive (i.e., not active and has no descendants), false otherwise. Always returns false if AMR is disabled.

Definition at line 585 of file ItemInternal.h.

References hasHChildren(), and isActive().

Referenced by Arcane::mesh::MeshRefinement::_contract().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isSuppressed()

◆ itemInternal()

ItemInternal * Arcane::impl::ItemBase::itemInternal ( ) const
inline

Definition at line 1148 of file ItemInternal.h.

◆ itemList() [1/4]

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::itemList ( Cell * ) const
inline

Definition at line 710 of file ItemInternal.h.

◆ itemList() [2/4]

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::itemList ( Edge * ) const
inline

Definition at line 708 of file ItemInternal.h.

◆ itemList() [3/4]

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::itemList ( Face * ) const
inline

Definition at line 709 of file ItemInternal.h.

◆ itemList() [4/4]

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::itemList ( Node * ) const
inline

Definition at line 707 of file ItemInternal.h.

◆ itemLocalId()

ItemLocalId Arcane::impl::ItemBase::itemLocalId ( ) const
inline

Local number (in the subdomain) of the entity.

Definition at line 1188 of file ItemInternal.h.

References m_local_id.

Referenced by Arcane::mesh::AbstractItemFamilyTopologyModifier::findAndReplaceCell(), Arcane::mesh::AbstractItemFamilyTopologyModifier::findAndReplaceEdge(), Arcane::mesh::AbstractItemFamilyTopologyModifier::findAndReplaceFace(), and Arcane::mesh::AbstractItemFamilyTopologyModifier::findAndReplaceNode().

Here is the caller graph for this function:

◆ itemTypeId()

ItemTypeId Arcane::ItemBase::itemTypeId ( ) const
inline

Type of the entity.

Definition at line 531 of file ItemInternal.h.

References typeId().

Here is the call graph for this function:

◆ kind()

eItemKind Arcane::ItemBase::kind ( ) const
inline

Kind of the entity.

Definition at line 597 of file ItemInternal.h.

References m_shared_info.

Referenced by Arcane::ItemPrinter::Internal::_printBasics().

Here is the caller graph for this function:

◆ level()

Int32 Arcane::ItemBase::level ( ) const
inline
Returns
the refinement level of the current item. If the parent item is

if I do not have a parent, I was created directly from a file or by the user, so I am a level 0 item

otherwise, I am at a higher level than my parent

Definition at line 538 of file ItemInternal.h.

References level(), and nbHParent().

Referenced by Arcane::mesh::GhostLayerBuilder::addGhostChildFromParent(), level(), and Arcane::ItemInternal::topHParent().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ localId()

Int32 Arcane::ItemBase::localId ( ) const
inline

Local number (in the subdomain) of the entity.

Definition at line 489 of file ItemInternal.h.

References m_local_id.

Referenced by Arcane::mesh::DoFFamily::_addItems(), Arcane::mesh::DynamicMeshKindInfos::_allocOne(), Arcane::mesh::ItemInternalMap::_changeLocalIds(), Arcane::mesh::MeshRefinement::_contract(), Arcane::ItemPrinter::Internal::_printBasics(), Arcane::ItemPrinter::Internal::_printParents(), Arcane::mesh::DynamicMeshIncrementalBuilder::addCells(), Arcane::mesh::DynamicMeshIncrementalBuilder::addEdges(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFaces(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFamilyItems(), Arcane::mesh::GhostLayerBuilder::addGhostChildFromParent(), Arcane::mesh::DoFFamily::addGhostItems(), Arcane::mesh::DynamicMeshIncrementalBuilder::addHChildrenCells(), Arcane::mesh::DynamicMeshIncrementalBuilder::addNodes(), Arcane::mesh::OneMeshItemAdder::addOneParentItem(), Arcane::mesh::DynamicMeshKindInfos::checkValid(), Arcane::VariableSynchronizerComputeList::compute(), Arcane::mesh::CellFamilySerializer::deserializeItems(), Arcane::mesh::DynamicMeshKindInfos::finalizeMeshChanged(), Arcane::mesh::ItemFamily::prepareForDump(), Arcane::ItemGroupImpl::removeAddItems(), Arcane::mesh::DynamicMeshKindInfos::removeDetachedOne(), Arcane::mesh::ItemFamily::removeNeedRemoveMarkedItems(), Arcane::mesh::DynamicMeshKindInfos::removeOne(), and Arcane::Cell::whichChildAmI().

Here is the caller graph for this function:

◆ masterFace()

ItemBase Arcane::ItemBase::masterFace ( ) const
inline

Definition at line 649 of file ItemInternal.h.

◆ nbCell()

Integer Arcane::ItemBase::nbCell ( ) const
inline

Number of cells connected to the entity (for nodes, edges, and faces).

Definition at line 518 of file ItemInternal.h.

References m_local_id.

◆ nbEdge()

Integer Arcane::ItemBase::nbEdge ( ) const
inline

Number of edges of the entity or number of edges connected to the entity (for nodes).

Definition at line 514 of file ItemInternal.h.

References m_local_id.

◆ nbFace()

Integer Arcane::ItemBase::nbFace ( ) const
inline

Number of faces of the entity or number of faces connected to the entity (for nodes and edges).

Definition at line 516 of file ItemInternal.h.

References m_local_id.

◆ nbHChildren()

Int32 Arcane::ItemBase::nbHChildren ( ) const
inline

Number of children for AMR.

Definition at line 522 of file ItemInternal.h.

References m_local_id.

Referenced by Arcane::mesh::MeshRefinement::_contract(), hasHChildren(), whichChildAmI(), and Arcane::ItemInternal::whichChildAmI().

Here is the caller graph for this function:

◆ nbHParent()

Int32 Arcane::ItemBase::nbHParent ( ) const
inline

Number of parents for AMR.

Definition at line 520 of file ItemInternal.h.

References m_local_id.

Referenced by Arcane::mesh::MeshRefinement::_contract(), level(), and Arcane::ItemInternal::topHParent().

Here is the caller graph for this function:

◆ nbNode()

Integer Arcane::ItemBase::nbNode ( ) const
inline

Number of nodes of the entity.

Definition at line 512 of file ItemInternal.h.

References m_local_id.

◆ nbParent()

Integer Arcane::ItemBase::nbParent ( ) const
inline

Number of parent for sub-meshes.

Definition at line 524 of file ItemInternal.h.

References m_shared_info.

Referenced by Arcane::ItemPrinter::Internal::_printErrors(), and Arcane::ItemPrinter::Internal::_printParents().

Here is the caller graph for this function:

◆ nodeBase()

ItemBase Arcane::ItemBase::nodeBase ( Int32 index) const
inline

Definition at line 713 of file ItemInternal.h.

◆ nodeId()

Int32 Arcane::ItemBase::nodeId ( Integer index) const
inline

Definition at line 664 of file ItemInternal.h.

◆ nodeList()

impl::ItemIndexedListView< DynExtent > Arcane::ItemBase::nodeList ( ) const
inline

Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane.

Warning
These methods must only be called on entities that possess the associated connectivity. For example, this does not work on Cell->Cell because there is no cell/cell connectivity. Misuse results in an array overflow.

Definition at line 702 of file ItemInternal.h.

References m_local_id.

Referenced by Arcane::mesh::AbstractItemFamilyTopologyModifier::findAndReplaceNode().

Here is the caller graph for this function:

◆ null()

bool Arcane::ItemBase::null ( ) const
inline

True if the entity is the null entity.

Definition at line 599 of file ItemInternal.h.

References m_local_id.

Referenced by Arcane::mesh::FaceUniqueIdBuilder::_computeFacesUniqueIdsParallelV2(), and Arcane::ItemInternal::topHParent().

Here is the caller graph for this function:

◆ owner()

Int32 Arcane::ItemBase::owner ( ) const
inline

Number of the owning subdomain of the entity.

Definition at line 506 of file ItemInternal.h.

References m_local_id, and m_shared_info.

Referenced by Arcane::ItemPrinter::Internal::_printBasics(), Arcane::ItemPrinter::Internal::_printErrors(), Arcane::mesh::GhostLayerBuilder::addGhostChildFromParent(), Arcane::mesh::DynamicMeshKindInfos::checkValid(), Arcane::VariableSynchronizerComputeList::compute(), Arcane::mesh::DynamicMeshKindInfos::finalizeMeshChanged(), and Arcane::MeshUtils::writeMeshConnectivity().

Here is the caller graph for this function:

◆ parentBase()

impl::ItemBase Arcane::impl::ItemBase::parentBase ( Int32 index) const
inline

Definition at line 1170 of file ItemInternal.h.

◆ parentId()

Int32 Arcane::ItemBase::parentId ( Integer index) const
inline

Definition at line 661 of file ItemInternal.h.

◆ toMutable()

impl::MutableItemBase Arcane::impl::ItemBase::toMutable ( )
inline

Mutable interface of this entity.

Definition at line 1179 of file ItemInternal.h.

References m_local_id, and m_shared_info.

Referenced by Arcane::mesh::ItemFamily::removeNeedRemoveMarkedItems().

Here is the caller graph for this function:

◆ topHParentBase()

impl::ItemBase Arcane::impl::ItemBase::topHParentBase ( ) const

Definition at line 126 of file ItemInternal.cc.

◆ typeId()

Int16 Arcane::ItemBase::typeId ( ) const
inline

Type of the entity.

Definition at line 529 of file ItemInternal.h.

References m_local_id, and m_shared_info.

Referenced by itemTypeId(), and typeInfo().

Here is the caller graph for this function:

◆ typeInfo()

ItemTypeInfo * Arcane::ItemBase::typeInfo ( ) const
inline

Type of the entity.

Definition at line 533 of file ItemInternal.h.

References m_shared_info, and typeId().

Referenced by Arcane::ItemPrinter::Internal::_printBasics(), and Arcane::mesh::ItemFamily::prepareForDump().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uniqueId()

◆ whichChildAmI()

Int32 Arcane::impl::ItemBase::whichChildAmI ( Int32 local_id) const
Returns
the rank of the child (iitem). example: if rank = m_internal->whichChildAmI(iitem); then m_internal->hChild(rank) would be iitem;

Definition at line 154 of file ItemInternal.cc.

References hasHChildren(), and nbHChildren().

Here is the call graph for this function:

◆ ::Arcane::Item

friend class ::Arcane::Item
friend

Definition at line 453 of file ItemInternal.h.

◆ ::Arcane::ItemEnumerator

friend class ::Arcane::ItemEnumerator
friend

Definition at line 456 of file ItemInternal.h.

◆ ::Arcane::ItemInternal

friend class ::Arcane::ItemInternal
friend

Definition at line 452 of file ItemInternal.h.

◆ ::Arcane::ItemInternalCompatibility

Definition at line 454 of file ItemInternal.h.

◆ ::Arcane::mesh::ItemFamily

friend class ::Arcane::mesh::ItemFamily
friend

Definition at line 461 of file ItemInternal.h.

◆ ::Arcane::mesh::MeshRefinement

friend class ::Arcane::mesh::MeshRefinement
friend

Definition at line 462 of file ItemInternal.h.

◆ ::Arcane::Node

friend class ::Arcane::Node
friend

Definition at line 459 of file ItemInternal.h.

Member Data Documentation

◆ m_local_id

Int32 Arcane::ItemBase::m_local_id = NULL_ITEM_LOCAL_ID
private

◆ m_padding

Int32 Arcane::ItemBase::m_padding = 0
private

Field used only to explicitly manage alignment.

Definition at line 768 of file ItemInternal.h.

◆ m_shared_info

◆ MutableItemBase

friend Arcane::ItemBase::MutableItemBase
private

Definition at line 457 of file ItemInternal.h.


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