Table of entity lists. More...
#include <arcane/core/ItemPairGroup.h>
Classes | |
| class | CustomFunctorWrapper |
| Wrapper for an ItemPairGroup::CustomFunctor. More... | |
Public Types | |
| typedef IFunctorWithArgumentT< ItemPairGroupBuilder & > | CustomFunctor |
| Functor for custom connectivity calculation. | |
Public Member Functions | |
| ItemPairGroup () | |
| Constructs an empty table. | |
| ItemPairGroup (ItemPairGroupImpl *prv) | |
| Constructs a group from the internal representation prv. | |
| ItemPairGroup (const ItemGroup &group, const ItemGroup &sub_item_group, eItemKind link_kind) | |
| Constructs an instance by specifying the neighborhood via entities of kind link_kind. | |
| ItemPairGroup (const ItemGroup &group, const ItemGroup &sub_item_group, CustomFunctor *functor) | |
| Constructs an instance with a specific functor. | |
| ItemPairGroup (const ItemPairGroup &from) | |
| Copy constructor. | |
| const ItemPairGroup & | operator= (const ItemPairGroup &from) |
| bool | null () const |
| true means the group is the null group | |
| eItemKind | itemKind () const |
| Type of entities in the group. | |
| eItemKind | subItemKind () const |
| Type of sub-entities in the group. | |
| ItemPairGroupImpl * | internal () const |
| Returns the group implementation. | |
| IItemFamily * | itemFamily () const |
| Entity family to which this group belongs (0 for a null list). | |
| IItemFamily * | subItemFamily () const |
| Entity family to which this group belongs (0 for a null list). | |
| IMesh * | mesh () const |
| Mesh to which this list belongs (0 for a null list). | |
| const ItemGroup & | itemGroup () const |
| Initial item group. | |
| const ItemGroup & | subItemGroup () const |
| Final item group (after bounce). | |
| void | invalidate (bool force_recompute=false) |
| Invalidates the list. | |
| void | checkValid () |
| Internal check of group validity. | |
| ItemPairEnumerator | enumerator () const |
Static Protected Member Functions | |
| static ItemPairGroupImpl * | _check (ItemPairGroupImpl *impl, eItemKind ik, eItemKind aik) |
| Returns the group impl if it is of kind kt, the null group otherwise. | |
Protected Attributes | |
| AutoRefT< ItemPairGroupImpl > | m_impl |
| Internal representation of the group. | |
Table of entity lists.
This class allows managing a list of entities associated with each entity of an entity group (ItemGroup). For example, for every node in a group, the set of cells connected to this node by faces.
This class has a reference semantics in the same way as the ItemGroup class.
Arcane provides a predefined set of methods to calculate the connectivities of entities connected to other entities by a specific entity type. To use these methods, you must use the following constructor: ItemPairGroup(const ItemGroup& group,const ItemGroup& sub_item_group, eItemKind link_kind). link_kind then indicates the entity type that links them. For example:
It is possible for the user to specify a particular way of calculating connectivities by specifying a functor of type ItemPairGroup::CustomFunctor as an argument to the constructor.
Here is a complete example that calculates the cells connected to the cells via faces:
Definition at line 38 of file ItemPairGroup.h.
Functor for custom connectivity calculation.
Definition at line 45 of file ItemPairGroup.h.
| Arcane::ItemPairGroup::ItemPairGroup | ( | ) |
Constructs an empty table.
Definition at line 206 of file ItemPairGroup.cc.
References m_impl.
Referenced by Arcane::ItemPairGroup::CustomFunctorWrapper::executeFunctor(), ItemPairGroup(), and ItemPairGroup().
|
explicit |
Constructs a group from the internal representation prv.
Definition at line 197 of file ItemPairGroup.cc.
References m_impl.
| Arcane::ItemPairGroup::ItemPairGroup | ( | const ItemGroup & | group, |
| const ItemGroup & | sub_item_group, | ||
| eItemKind | link_kind ) |
Constructs an instance by specifying the neighborhood via entities of kind link_kind.
Definition at line 169 of file ItemPairGroup.cc.
References Arcane::IItemFamily::findAdjacencyItems(), internal(), Arcane::ItemGroup::itemFamily(), ItemPairGroup(), and m_impl.
| Arcane::ItemPairGroup::ItemPairGroup | ( | const ItemGroup & | group, |
| const ItemGroup & | sub_item_group, | ||
| CustomFunctor * | functor ) |
Constructs an instance with a specific functor.
Definition at line 182 of file ItemPairGroup.cc.
References ARCANE_CHECK_POINTER, and m_impl.
|
inline |
Copy constructor.
Definition at line 64 of file ItemPairGroup.h.
References ItemPairGroup(), and m_impl.
|
inlinestaticprotected |
Returns the group impl if it is of kind kt, the null group otherwise.
Definition at line 133 of file ItemPairGroup.h.
|
inline |
Internal check of group validity.
Definition at line 119 of file ItemPairGroup.h.
References m_impl.
| ItemPairEnumerator Arcane::ItemPairGroup::enumerator | ( | ) | const |
Definition at line 215 of file ItemPairGroup.cc.
|
inline |
Returns the group implementation.
Definition at line 92 of file ItemPairGroup.h.
References m_impl.
Referenced by ItemPairGroup(), Arcane::operator!=(), and Arcane::operator==().
|
inline |
|
inline |
Entity family to which this group belongs (0 for a null list).
Definition at line 95 of file ItemPairGroup.h.
References m_impl.
|
inline |
|
inline |
|
inline |
Mesh to which this list belongs (0 for a null list).
Definition at line 101 of file ItemPairGroup.h.
References m_impl.
|
inline |
true means the group is the null group
Definition at line 78 of file ItemPairGroup.h.
References m_impl.
|
inline |
Definition at line 68 of file ItemPairGroup.h.
|
inline |
Entity family to which this group belongs (0 for a null list).
Definition at line 98 of file ItemPairGroup.h.
References m_impl.
|
inline |
|
inline |
Type of sub-entities in the group.
Definition at line 82 of file ItemPairGroup.h.
References m_impl.
|
protected |
Internal representation of the group.
Definition at line 128 of file ItemPairGroup.h.
Referenced by checkValid(), internal(), invalidate(), itemFamily(), itemGroup(), itemKind(), ItemPairGroup(), ItemPairGroup(), ItemPairGroup(), ItemPairGroup(), ItemPairGroup(), mesh(), null(), subItemFamily(), subItemGroup(), and subItemKind().