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

Implementation of an array of lists of entities. More...

#include <arcane/core/ItemPairGroupImpl.h>

Inheritance diagram for Arcane::ItemPairGroupImpl:
Collaboration diagram for Arcane::ItemPairGroupImpl:

Public Member Functions

 ItemPairGroupImpl (const ItemGroup &group, const ItemGroup &sub_group)
 ~ItemPairGroupImpl () override
 Releases resources.
virtual ISharedReferencesharedReference ()
const Stringname () const
 Group name.
virtual Integer nbRef () const
 Number of references on the group.
bool null () const
 Returns true if the group is null.
IMeshmesh () const
 Mesh to which the group belongs (0 for the null group).
eItemKind itemKind () const
 Group kind. This is the kind of its elements.
eItemKind subItemKind () const
 Group kind. This is the kind of its elements.
IItemFamilyitemFamily () const
 Family to which the group belongs (or 0 if none).
IItemFamilysubItemFamily () const
 Family to which the group belongs (or 0 if none).
const ItemGroupitemGroup () const
 Group of entities.
const ItemGroupsubItemGroup () const
 Group of sub-entities.
Integer size () const
 Number of entities in the group.
void invalidate (bool force_recompute)
 Invalidates the group.
void checkValid ()
 Checks that the group is valid.
bool checkNeedUpdate ()
 Updates the group if necessary.
void changeIds (IntegerConstArrayView old_to_new_ids)
 Changes the indices of the group's entities.
Array< Int64 > & unguardedIndexes () const
Array< Int32 > & unguardedLocalIds () const
void setComputeFunctor (IFunctor *functor)
Int64ArrayView indexes ()
Span< const Int32subItemsLocalId ()
void addRef () override
 Increments the reference counter.
void removeRef () override
 Decrements the reference counter.
Public Member Functions inherited from Arcane::SharedReference
void addRef () override
 Increments the reference counter.
void removeRef () override
 Decrements the reference counter.
Int32 refCount () const override
 Returns the value of the reference counter.
Public Member Functions inherited from Arcane::ISharedReference
virtual ~ISharedReference ()=default
 Releases resources.

Static Public Member Functions

static ItemPairGroupImpl * checkSharedNull ()

Static Public Attributes

static ItemPairGroupImpl * shared_null = 0

Private Member Functions

void deleteMe () override

Private Attributes

ItemPairGroupImplPrivatem_p = nullptr
 Group implementation.

Detailed Description

Implementation of an array of lists of entities.

Definition at line 34 of file ItemPairGroupImpl.h.

Constructor & Destructor Documentation

◆ ItemPairGroupImpl() [1/2]

Arcane::ItemPairGroupImpl::ItemPairGroupImpl ( )

Definition at line 189 of file ItemPairGroupImpl.cc.

◆ ItemPairGroupImpl() [2/2]

Arcane::ItemPairGroupImpl::ItemPairGroupImpl ( const ItemGroup & group,
const ItemGroup & sub_group )

Definition at line 178 of file ItemPairGroupImpl.cc.

◆ ~ItemPairGroupImpl()

Arcane::ItemPairGroupImpl::~ItemPairGroupImpl ( )
override

Releases resources.

Definition at line 198 of file ItemPairGroupImpl.cc.

References m_p.

Member Function Documentation

◆ addRef()

void Arcane::ItemPairGroupImpl::addRef ( )
overridevirtual

Increments the reference counter.

Implements Arcane::ISharedReference.

Definition at line 221 of file ItemPairGroupImpl.cc.

References Arcane::SharedReference::addRef().

Here is the call graph for this function:

◆ checkNeedUpdate()

bool Arcane::ItemPairGroupImpl::checkNeedUpdate ( )

Updates the group if necessary.

A group must be updated when it becomes invalid, for example following a call to invalidate().

Return values
trueif the group was updated,
falseotherwise.

Definition at line 330 of file ItemPairGroupImpl.cc.

References m_p.

Referenced by invalidate(), and size().

Here is the caller graph for this function:

◆ checkSharedNull()

ItemPairGroupImpl * Arcane::ItemPairGroupImpl::checkSharedNull ( )
static

Definition at line 165 of file ItemPairGroupImpl.cc.

◆ checkValid()

void Arcane::ItemPairGroupImpl::checkValid ( )

Checks that the group is valid.

Definition at line 311 of file ItemPairGroupImpl.cc.

Referenced by size().

Here is the caller graph for this function:

◆ deleteMe()

void Arcane::ItemPairGroupImpl::deleteMe ( )
overrideprivatevirtual
Todo
To be deleted...

Implements Arcane::SharedReference.

Definition at line 212 of file ItemPairGroupImpl.cc.

◆ indexes()

ArrayView< Int64 > Arcane::ItemPairGroupImpl::indexes ( )

Definition at line 363 of file ItemPairGroupImpl.cc.

◆ invalidate()

void Arcane::ItemPairGroupImpl::invalidate ( bool force_recompute)

Invalidates the group.

Definition at line 319 of file ItemPairGroupImpl.cc.

References checkNeedUpdate(), and m_p.

Referenced by size().

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

◆ itemFamily()

IItemFamily * Arcane::ItemPairGroupImpl::itemFamily ( ) const

Family to which the group belongs (or 0 if none).

Definition at line 248 of file ItemPairGroupImpl.cc.

References m_p.

◆ itemGroup()

const ItemGroup & Arcane::ItemPairGroupImpl::itemGroup ( ) const

Group of entities.

Definition at line 293 of file ItemPairGroupImpl.cc.

References m_p.

◆ itemKind()

eItemKind Arcane::ItemPairGroupImpl::itemKind ( ) const

Group kind. This is the kind of its elements.

Definition at line 275 of file ItemPairGroupImpl.cc.

References m_p.

◆ mesh()

IMesh * Arcane::ItemPairGroupImpl::mesh ( ) const

Mesh to which the group belongs (0 for the null group).

Definition at line 239 of file ItemPairGroupImpl.cc.

References m_p.

◆ nbRef()

virtual Integer Arcane::ItemPairGroupImpl::nbRef ( ) const
inlinevirtual

Number of references on the group.

Definition at line 58 of file ItemPairGroupImpl.h.

References Arcane::SharedReference::refCount().

Here is the call graph for this function:

◆ null()

bool Arcane::ItemPairGroupImpl::null ( ) const

Returns true if the group is null.

Definition at line 266 of file ItemPairGroupImpl.cc.

References m_p.

◆ removeRef()

void Arcane::ItemPairGroupImpl::removeRef ( )
overridevirtual

Decrements the reference counter.

Implements Arcane::ISharedReference.

Definition at line 230 of file ItemPairGroupImpl.cc.

References Arcane::SharedReference::removeRef().

Here is the call graph for this function:

◆ setComputeFunctor()

void Arcane::ItemPairGroupImpl::setComputeFunctor ( IFunctor * functor)

Definition at line 383 of file ItemPairGroupImpl.cc.

References m_p.

Referenced by changeIds().

Here is the caller graph for this function:

◆ sharedReference()

virtual ISharedReference & Arcane::ItemPairGroupImpl::sharedReference ( )
inlinevirtual

Definition at line 50 of file ItemPairGroupImpl.h.

◆ subItemFamily()

IItemFamily * Arcane::ItemPairGroupImpl::subItemFamily ( ) const

Family to which the group belongs (or 0 if none).

Definition at line 257 of file ItemPairGroupImpl.cc.

References m_p.

◆ subItemGroup()

const ItemGroup & Arcane::ItemPairGroupImpl::subItemGroup ( ) const

Group of sub-entities.

Definition at line 302 of file ItemPairGroupImpl.cc.

References m_p.

◆ subItemKind()

eItemKind Arcane::ItemPairGroupImpl::subItemKind ( ) const

Group kind. This is the kind of its elements.

Definition at line 284 of file ItemPairGroupImpl.cc.

References m_p.

◆ subItemsLocalId()

Span< const Int32 > Arcane::ItemPairGroupImpl::subItemsLocalId ( )

Definition at line 373 of file ItemPairGroupImpl.cc.

◆ unguardedIndexes()

Array< Int64 > & Arcane::ItemPairGroupImpl::unguardedIndexes ( ) const

Definition at line 345 of file ItemPairGroupImpl.cc.

References m_p.

Referenced by changeIds().

Here is the caller graph for this function:

◆ unguardedLocalIds()

Array< Int32 > & Arcane::ItemPairGroupImpl::unguardedLocalIds ( ) const

Definition at line 354 of file ItemPairGroupImpl.cc.

References m_p.

Referenced by changeIds().

Here is the caller graph for this function:

Member Data Documentation

◆ m_p

◆ shared_null

ItemPairGroupImpl * Arcane::ItemPairGroupImpl::shared_null = 0
static

Definition at line 45 of file ItemPairGroupImpl.h.


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