Aggregated variable of arbitrary types (no array variables). More...
#include <arcane/core/anyitem/AnyItemVariable.h>
Classes | |
| class | VariableAdder |
| Tool for adding a variable to a group. More... | |
Public Member Functions | |
| Variable (const Family &family) | |
| Variable (const Variable &v) | |
| DataType & | operator[] (const Group::BlockItemEnumerator &item) |
| Direct accessor by an AnyItem enumerator. | |
| const DataType & | operator[] (const Group::BlockItemEnumerator &item) const |
| Direct accessor by an AnyItem enumerator. | |
| DataType & | operator[] (const LinkFamily::LinkData &item) |
| Direct accessor by a LinkFamily element (LinkData). | |
| const DataType & | operator[] (const LinkFamily::LinkData &item) const |
| Direct accessor by a LinkFamily element (LinkData). | |
| VariableAdder | operator[] (const ItemGroup &group) |
| Adding a variable for a group. | |
| template<typename T> | |
| VariableAdder | operator[] (const ItemGroupT< T > &group) |
| const Family & | family () const |
| Accessor to the family. | |
| ConstArrayView< IVariable * > | variables () const |
| Array of variables. | |
| ArrayView< DataType > | valuesAtGroup (const Integer igrp) |
| Raw data associated with a group identified relative to its family. | |
| ConstArrayView< DataType > | valuesAtGroup (const Integer igrp) const |
| Raw data associated with a group identified relative to its family. | |
| void | notifyFamilyIsInvalidate () |
| Notification of family invalidation. | |
| void | notifyFamilyIsIncreased () |
| Notification of family enlargement. | |
Private Member Functions | |
| void | _insertVariable (ItemGroup group, ArrayView< DataType > v) |
| void | _insertPartialVariable (ItemGroup group, ArrayView< DataType > v) |
| void | _insertInternalVariable (ItemGroup group, IVariable *v) |
Private Attributes | |
| const Family | m_family |
| AnyItem Family of groups. | |
| Arcane::UniqueArray< ArrayView< DataType > > | m_values |
| Container of generic variables. | |
| Arcane::UniqueArray< IVariable * > | m_variables |
| Container of variables. | |
Aggregated variable of arbitrary types (no array variables).
For example:
AnyItem::Family family;
family << AnyItem::GroupBuilder( allFaces() ) << AnyItem::GroupBuilder( allCells() );
AnyItem::Variable<Real> variable(family);
variable[allFaces()] << m_face_variable; variable[allCells()] << m_cell_variable;
Real value = 0.; ENUMERATE_ANY_ITEM(iitem, family.allItems()) { value += variable[iitem]; }
Definition at line 54 of file AnyItemVariable.h.
|
inline |
Definition at line 110 of file AnyItemVariable.h.
|
inline |
Definition at line 121 of file AnyItemVariable.h.
|
inline |
Definition at line 130 of file AnyItemVariable.h.
|
inlineprivate |
Definition at line 231 of file AnyItemVariable.h.
|
inlineprivate |
Definition at line 224 of file AnyItemVariable.h.
|
inlineprivate |
Definition at line 217 of file AnyItemVariable.h.
|
inline |
|
inlinevirtual |
Notification of family enlargement.
Implements Arcane::AnyItem::IFamilyObserver.
Definition at line 204 of file AnyItemVariable.h.
References m_family, m_values, and m_variables.
|
inlinevirtual |
Notification of family invalidation.
Implements Arcane::AnyItem::IFamilyObserver.
Definition at line 194 of file AnyItemVariable.h.
References m_family, m_values, and m_variables.
|
inline |
Direct accessor by an AnyItem enumerator.
Definition at line 137 of file AnyItemVariable.h.
References Arcane::AnyItem::Group::BlockItemEnumerator::groupIndex(), m_values, and Arcane::AnyItem::Group::BlockItemEnumerator::varIndex().
|
inline |
Direct accessor by an AnyItem enumerator.
Definition at line 143 of file AnyItemVariable.h.
References Arcane::AnyItem::Group::BlockItemEnumerator::groupIndex(), m_values, and Arcane::AnyItem::Group::BlockItemEnumerator::varIndex().
|
inline |
Adding a variable for a group.
Definition at line 161 of file AnyItemVariable.h.
|
inline |
Definition at line 167 of file AnyItemVariable.h.
|
inline |
Direct accessor by a LinkFamily element (LinkData).
Definition at line 149 of file AnyItemVariable.h.
References Arcane::AnyItem::LinkFamilyInternal::LinkData::groupIndex(), m_values, and Arcane::AnyItem::LinkFamilyInternal::LinkData::varIndex().
|
inline |
Direct accessor by a LinkFamily element (LinkData).
Definition at line 155 of file AnyItemVariable.h.
References Arcane::AnyItem::LinkFamilyInternal::LinkData::groupIndex(), m_values, and Arcane::AnyItem::LinkFamilyInternal::LinkData::varIndex().
|
inline |
Raw data associated with a group identified relative to its family.
Definition at line 182 of file AnyItemVariable.h.
References m_values.
|
inline |
Raw data associated with a group identified relative to its family.
Definition at line 188 of file AnyItemVariable.h.
References m_values.
|
inline |
|
private |
AnyItem Family of groups.
Definition at line 239 of file AnyItemVariable.h.
Referenced by family(), notifyFamilyIsIncreased(), and notifyFamilyIsInvalidate().
|
private |
Container of generic variables.
Definition at line 242 of file AnyItemVariable.h.
Referenced by notifyFamilyIsIncreased(), notifyFamilyIsInvalidate(), operator[](), operator[](), operator[](), operator[](), valuesAtGroup(), and valuesAtGroup().
|
private |
Container of variables.
Definition at line 245 of file AnyItemVariable.h.
Referenced by notifyFamilyIsIncreased(), notifyFamilyIsInvalidate(), and variables().