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

User group to specify groups (Arcane) over which one wishes to iterate these groups must be in the family. More...

#include <arcane/core/anyitem/AnyItemUserGroup.h>

Inheritance diagram for Arcane::AnyItem::UserGroup:
Collaboration diagram for Arcane::AnyItem::UserGroup:

Public Member Functions

 UserGroup (const Family &family)
UserGroup & operator<< (GroupBuilder builder)
 Adds an arcane group to the group.
void clear ()
 Clears the group.
void notifyFamilyIsInvalidate ()
 Action if the family is invalidated: clears the group.
void notifyFamilyIsIncreased ()
 If the family is increased, no impact on the group.
Public Member Functions inherited from Arcane::AnyItem::Group
 Group (const Private::GroupIndexMapping &groups)
 Construction from a Group - offset table (from the family).
Enumerator enumerator () const
 Enumerator of the group.
Integer size () const
 Number of aggregated groups.

Private Types

typedef Private::GroupIndexMapping GroupIndexMapping

Private Attributes

const Family m_family
 AnyItem Family (flyweight copy).
GroupIndexMapping m_currents
 Group Table - offset.

Additional Inherited Members

Public Attributes inherited from Arcane::AnyItem::Group
const Private::GroupIndexMappingm_groups
 Group - offset table.

Detailed Description

User group to specify groups (Arcane) over which one wishes to iterate these groups must be in the family.

For example:

AnyItem::Family family;

family << AnyItem::GroupBuilder( allFaces() ) << AnyItem::GroupBuilder( allCells() ) << AnyItem::GroupBuilder( allNodes() );

AnyItem::UserGroup sub_group(family);

sub_group << AnyItem::GroupBuilder( allCells() ) << AnyItem::GroupBuilder( allFaces() );

Definition at line 49 of file AnyItemUserGroup.h.

Member Typedef Documentation

◆ GroupIndexMapping

typedef Private::GroupIndexMapping Arcane::AnyItem::UserGroup::GroupIndexMapping
private

Definition at line 55 of file AnyItemUserGroup.h.

Constructor & Destructor Documentation

◆ UserGroup()

Arcane::AnyItem::UserGroup::UserGroup ( const Family & family)
inline

Definition at line 59 of file AnyItemUserGroup.h.

◆ ~UserGroup()

Arcane::AnyItem::UserGroup::~UserGroup ( )
inline

Definition at line 66 of file AnyItemUserGroup.h.

Member Function Documentation

◆ clear()

void Arcane::AnyItem::UserGroup::clear ( )
inline

Clears the group.

Definition at line 90 of file AnyItemUserGroup.h.

References m_currents.

Referenced by notifyFamilyIsInvalidate().

Here is the caller graph for this function:

◆ notifyFamilyIsIncreased()

void Arcane::AnyItem::UserGroup::notifyFamilyIsIncreased ( )
inlinevirtual

If the family is increased, no impact on the group.

Implements Arcane::AnyItem::IFamilyObserver.

Definition at line 103 of file AnyItemUserGroup.h.

◆ notifyFamilyIsInvalidate()

void Arcane::AnyItem::UserGroup::notifyFamilyIsInvalidate ( )
inlinevirtual

Action if the family is invalidated: clears the group.

Implements Arcane::AnyItem::IFamilyObserver.

Definition at line 96 of file AnyItemUserGroup.h.

References clear().

Here is the call graph for this function:

◆ operator<<()

UserGroup & Arcane::AnyItem::UserGroup::operator<< ( GroupBuilder builder)
inline

Adds an arcane group to the group.

Definition at line 72 of file AnyItemUserGroup.h.

References Arcane::ItemGroup::internal(), m_currents, m_family, Arcane::AnyItem::Group::m_groups, and Arcane::ItemGroup::name().

Here is the call graph for this function:

Member Data Documentation

◆ m_currents

GroupIndexMapping Arcane::AnyItem::UserGroup::m_currents
private

Group Table - offset.

Definition at line 114 of file AnyItemUserGroup.h.

Referenced by clear(), and operator<<().

◆ m_family

const Family Arcane::AnyItem::UserGroup::m_family
private

AnyItem Family (flyweight copy).

Definition at line 111 of file AnyItemUserGroup.h.

Referenced by operator<<().


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