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

Observer events on the underlying ItemGroup. More...

Inheritance diagram for Arcane::ItemGroupPartialVariableObserver:
Collaboration diagram for Arcane::ItemGroupPartialVariableObserver:

Public Member Functions

 ItemGroupPartialVariableObserver (IVariable *var)
void executeExtend (const Int32ConstArrayView *info) override
 Execute the action associated with the extension.
void executeReduce (const Int32ConstArrayView *info) override
 Execute the action associated with the extension.
void executeCompact (const Int32ConstArrayView *info) override
 Executes the action associated with compaction.
void executeInvalidate () override
 Execute the action associated with invalidation.
bool needInfo () const override
 Indicates whether the observer will need transition information.
Public Member Functions inherited from Arcane::IItemGroupObserver
virtual ~IItemGroupObserver ()=default
 Destructor.

Private Attributes

IVariablem_var = nullptr

Detailed Description

Observer events on the underlying ItemGroup.

Definition at line 245 of file Variable.cc.

Constructor & Destructor Documentation

◆ ItemGroupPartialVariableObserver()

Arcane::ItemGroupPartialVariableObserver::ItemGroupPartialVariableObserver ( IVariable * var)
inlineexplicit

Definition at line 250 of file Variable.cc.

Member Function Documentation

◆ executeCompact()

void Arcane::ItemGroupPartialVariableObserver::executeCompact ( const Int32ConstArrayView * info)
inlineoverridevirtual

Executes the action associated with compaction.

Parameters
infolist of permutations in the old->new direction Assumes there is no change in size.

Implements Arcane::IItemGroupObserver.

Definition at line 314 of file Variable.cc.

References Arcane::ConstArrayView< T >::empty(), and Arcane::ItemGroup::localIdToIndex().

Here is the call graph for this function:

◆ executeExtend()

void Arcane::ItemGroupPartialVariableObserver::executeExtend ( const Int32ConstArrayView * info)
inlineoverridevirtual

Execute the action associated with the extension.

Parameters
infolist of added localIds Assumes there is no change in order or renumbering.

This method cannot be parallel.

Implements Arcane::IItemGroupObserver.

Definition at line 259 of file Variable.cc.

References ARCANE_FATAL, Arcane::ConstArrayView< T >::empty(), Arcane::ItemGroup::localIdToIndex(), Arcane::ConstArrayView< T >::size(), and Arcane::ItemGroup::size().

Here is the call graph for this function:

◆ executeInvalidate()

void Arcane::ItemGroupPartialVariableObserver::executeInvalidate ( )
inlineoverridevirtual

Execute the action associated with invalidation.

No transition information available.

Implements Arcane::IItemGroupObserver.

Definition at line 325 of file Variable.cc.

References Arcane::ItemGroup::localIdToIndex().

Here is the call graph for this function:

◆ executeReduce()

void Arcane::ItemGroupPartialVariableObserver::executeReduce ( const Int32ConstArrayView * info)
inlineoverridevirtual

Execute the action associated with the extension.

Parameters
infolist of positions removed in the old group Assumes there is no change in order or renumbering This approach compared to the list of localIds is motivated by the constraint in PartialVariable which is unaware of the localIds it hosts.
info2list of localIds of deleted elements. Potentially redundant with info, but inevitable for certain structures changing the order relative to the reference group (e.g.: ItemGroupDynamicMeshObserver) (DEPRECATED)

This method cannot be parallel.

Implements Arcane::IItemGroupObserver.

Definition at line 275 of file Variable.cc.

References Arcane::Array< T >::add(), ARCANE_FATAL, Arcane::ConstArrayView< T >::empty(), Arcane::ItemGroup::localIdToIndex(), Arcane::Array< T >::reserve(), Arcane::ConstArrayView< T >::size(), Arcane::ItemGroup::size(), and Arcane::ItemGroup::view().

Here is the call graph for this function:

◆ needInfo()

bool Arcane::ItemGroupPartialVariableObserver::needInfo ( ) const
inlineoverridevirtual

Indicates whether the observer will need transition information.

This information must not change after the first call to this function

Implements Arcane::IItemGroupObserver.

Definition at line 333 of file Variable.cc.

Member Data Documentation

◆ m_var

IVariable* Arcane::ItemGroupPartialVariableObserver::m_var = nullptr
private

Definition at line 337 of file Variable.cc.


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