Base class for mesh entities. More...
#include <arcane/core/ItemInternal.h>
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. | |
| ItemTypeInfo * | typeInfo () const |
| Type of the entity. | |
| Int32 | level () const |
| bool | isAncestor () const |
| bool | hasHChildren () const |
| bool | isActive () const |
| bool | isSubactive () const |
| IItemFamily * | family () 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< DynExtent > | nodeList () const |
| Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane. | |
| impl::ItemIndexedListView< DynExtent > | edgeList () const |
| impl::ItemIndexedListView< DynExtent > | faceList () const |
| impl::ItemIndexedListView< DynExtent > | cellList () const |
| impl::ItemIndexedListView< DynExtent > | itemList (Node *) const |
| impl::ItemIndexedListView< DynExtent > | itemList (Edge *) const |
| impl::ItemIndexedListView< DynExtent > | itemList (Face *) const |
| impl::ItemIndexedListView< DynExtent > | itemList (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 |
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 |
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.
|
inline |
Definition at line 473 of file ItemInternal.h.
|
inlineconstexpr |
Definition at line 476 of file ItemInternal.h.
|
inline |
Definition at line 1112 of file ItemInternal.h.
|
inline |
Definition at line 748 of file ItemInternal.h.
|
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.
|
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.
|
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.
|
inline |
Definition at line 716 of file ItemInternal.h.
Definition at line 667 of file ItemInternal.h.
|
inline |
Definition at line 705 of file ItemInternal.h.
|
inline |
Definition at line 714 of file ItemInternal.h.
Definition at line 665 of file ItemInternal.h.
|
inline |
Definition at line 703 of file ItemInternal.h.
|
inline |
Definition at line 715 of file ItemInternal.h.
Definition at line 666 of file ItemInternal.h.
|
inline |
Definition at line 704 of file ItemInternal.h.
|
inline |
Family the entity belongs to.
Definition at line 595 of file ItemInternal.h.
Referenced by Arcane::ItemPrinter::Internal::_printErrors().
|
inline |
Flags of the entity.
Definition at line 509 of file ItemInternal.h.
Referenced by Arcane::MutableItemBase::addFlags(), backCell(), Arcane::ItemInternal::backCell(), backCellId(), boundaryCell(), Arcane::ItemInternal::boundaryCell(), Arcane::CartesianMeshCoarsening::createCoarseCells(), frontCell(), Arcane::ItemInternal::frontCell(), frontCellId(), hasFlags(), isActive(), isBoundary(), isDetached(), isMasterFace(), isOwn(), isShared(), isSlaveFace(), isSuppressed(), Arcane::MutableItemBase::removeFlags(), Arcane::MutableItemBase::setDetached(), and Arcane::MutableItemBase::setOwner().
|
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.
|
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.
|
inline |
Returns whether the flags flags are set for the entity.
Definition at line 722 of file ItemInternal.h.
References flags().
|
inline |
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().
|
inline |
Definition at line 718 of file ItemInternal.h.
Definition at line 669 of file ItemInternal.h.
|
inline |
Definition at line 717 of file ItemInternal.h.
Definition at line 668 of file ItemInternal.h.
|
inline |
Definition at line 689 of file ItemInternal.h.
|
inline |
Definition at line 685 of file ItemInternal.h.
|
inline |
Definition at line 687 of file ItemInternal.h.
|
inline |
Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane.
Definition at line 683 of file ItemInternal.h.
References internalNodes().
Referenced by internalNodes().
|
inline |
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 isAncestor(), and isSubactive().
|
inline |
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().
|
inline |
true if the entity is on the boundary
Definition at line 618 of file ItemInternal.h.
References flags().
|
inline |
True if the entity is detached.
Definition at line 615 of file ItemInternal.h.
References flags(), and Arcane::ItemFlags::II_Detached.
|
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.
|
inline |
True if the entity is the null entity.
Definition at line 601 of file ItemInternal.h.
|
inline |
True if the entity belongs to the subdomain.
Definition at line 603 of file ItemInternal.h.
References flags().
Referenced by Arcane::ItemPrinter::Internal::_printErrors().
|
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().
|
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.
|
inline |
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().
|
inline |
True if the entity is suppressed.
Definition at line 613 of file ItemInternal.h.
References flags(), and Arcane::ItemFlags::II_Suppressed.
Referenced by Arcane::ItemPrinter::Internal::_printErrors(), and Arcane::ItemGroupImpl::removeAddItems().
|
inline |
Definition at line 1148 of file ItemInternal.h.
|
inline |
Definition at line 710 of file ItemInternal.h.
|
inline |
Definition at line 708 of file ItemInternal.h.
|
inline |
Definition at line 709 of file ItemInternal.h.
|
inline |
Definition at line 707 of file ItemInternal.h.
|
inline |
Local number (in the subdomain) of the entity.
Definition at line 1188 of file ItemInternal.h.
|
inline |
|
inline |
Kind of the entity.
Definition at line 597 of file ItemInternal.h.
Referenced by Arcane::ItemPrinter::Internal::_printBasics().
|
inline |
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 level(), and Arcane::ItemInternal::topHParent().
|
inline |
Local number (in the subdomain) of the entity.
Definition at line 489 of file ItemInternal.h.
Referenced by Arcane::ItemPrinter::Internal::_printBasics(), Arcane::ItemPrinter::Internal::_printParents(), Arcane::ItemGroupImpl::removeAddItems(), and Arcane::Cell::whichChildAmI().
|
inline |
Definition at line 649 of file ItemInternal.h.
|
inline |
Number of cells connected to the entity (for nodes, edges, and faces).
Definition at line 518 of file ItemInternal.h.
|
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.
|
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.
|
inline |
Number of children for AMR.
Definition at line 522 of file ItemInternal.h.
Referenced by hasHChildren(), whichChildAmI(), and Arcane::ItemInternal::whichChildAmI().
|
inline |
Number of parents for AMR.
Definition at line 520 of file ItemInternal.h.
Referenced by level(), and Arcane::ItemInternal::topHParent().
|
inline |
Number of nodes of the entity.
Definition at line 512 of file ItemInternal.h.
|
inline |
Number of parent for sub-meshes.
Definition at line 524 of file ItemInternal.h.
Referenced by Arcane::ItemPrinter::Internal::_printErrors(), and Arcane::ItemPrinter::Internal::_printParents().
|
inline |
Definition at line 713 of file ItemInternal.h.
Definition at line 664 of file ItemInternal.h.
|
inline |
Methods using the new connectivities to access connectivity information. Should not be used outside of Arcane.
Definition at line 702 of file ItemInternal.h.
|
inline |
True if the entity is the null entity.
Definition at line 599 of file ItemInternal.h.
Referenced by Arcane::ItemInternal::topHParent().
|
inline |
Number of the owning subdomain of the entity.
Definition at line 506 of file ItemInternal.h.
Referenced by Arcane::ItemPrinter::Internal::_printBasics(), Arcane::ItemPrinter::Internal::_printErrors(), and Arcane::MeshUtils::writeMeshConnectivity().
|
inline |
Definition at line 1170 of file ItemInternal.h.
Definition at line 661 of file ItemInternal.h.
|
inline |
Mutable interface of this entity.
Definition at line 1179 of file ItemInternal.h.
| impl::ItemBase Arcane::impl::ItemBase::topHParentBase | ( | ) | const |
Definition at line 126 of file ItemInternal.cc.
|
inline |
Type of the entity.
Definition at line 529 of file ItemInternal.h.
Referenced by itemTypeId(), and typeInfo().
|
inline |
Type of the entity.
Definition at line 533 of file ItemInternal.h.
References typeId().
Referenced by Arcane::ItemPrinter::Internal::_printBasics().
|
inline |
Unique number of the entity.
Definition at line 493 of file ItemInternal.h.
Referenced by Arcane::ItemPrinter::Internal::_printBasics(), Arcane::ItemPrinter::Internal::_printErrors(), Arcane::ItemPrinter::Internal::_printParents(), and Arcane::MeshUtils::writeMeshConnectivity().
(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().
|
friend |
Definition at line 453 of file ItemInternal.h.
|
friend |
Definition at line 456 of file ItemInternal.h.
|
friend |
Definition at line 452 of file ItemInternal.h.
|
friend |
Definition at line 454 of file ItemInternal.h.
|
friend |
Definition at line 461 of file ItemInternal.h.
|
friend |
Definition at line 462 of file ItemInternal.h.
|
friend |
Definition at line 459 of file ItemInternal.h.