Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ > Class Template Reference

View over a subset of a ConstituentItem container. More...

#include <arcane/core/materials/ConstituentItemIndexedSelectionView.h>

Inheritance diagram for Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >:
Collaboration diagram for Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >:

Public Types

using ItemVecView = ContainerView_
using ThatClass = ConstituentItemIndexedSelectionView
using TraitsType = Impl::ConstituentItemIndexedSelectionViewTraits<ContainerView_>
using ValueType = TraitsType::ValueType
Public Types inherited from Arcane::Materials::ConstituentItemIndexedSelectionViewBase
using IndexArrayView = const SmallSpan<const Int32>

Public Member Functions

 ConstituentItemIndexedSelectionView (ItemVecView ecv, IndexArrayView indices)
 ConstituentItemIndexedSelectionView (IMeshComponent *constituent, SmallSpan< const ValueType > ecv)
 Constructor from a view of ConstituentCell, MatCell or EnvCell.
__host__ __device__ Int32 sourceSize () const
ItemVecView sourceView () const
IndexArrayView selectionView () const
__host__ __device__ ValueType operator[] (Int32 i) const
__host__ __device__ ValueType item (Int32 i) const
Public Member Functions inherited from Arcane::Materials::ConstituentItemIndexedSelectionViewBase
__host__ __device__ Int32 size () const
 number of selected EnvCells

Static Public Member Functions

static constexpr bool IsSpanContainer ()

Protected Member Functions

 ConstituentItemIndexedSelectionView (ItemVecView view)
 Constructs a selection containing all elements of \view (which must derive from ComponentCellVectorView).
Protected Member Functions inherited from Arcane::Materials::ConstituentItemIndexedSelectionViewBase
 ConstituentItemIndexedSelectionViewBase (SmallSpan< const Int32 > indices)
 ConstituentItemIndexedSelectionViewBase (IMeshComponent *constituent, Int32 selection_size)

Private Attributes

ItemVecView m_container_view
 View over the original elements.

Additional Inherited Members

Protected Attributes inherited from Arcane::Materials::ConstituentItemIndexedSelectionViewBase
SmallSpan< const Int32m_selection_view = {}
 Selection.

Detailed Description

template<typename ContainerView_>
class Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >

View over a subset of a ConstituentItem container.

The container is the template argument ContainerView_. It can be a ComponentItemVectorView, MatCellVectorView, EnvCellVectorView or just a SmallSpan of a ConstituentItem. Entity selection is done by an array of indices. If this array is not provided, the selection is on all entities.

Like any view, instances of this class are invalidated if the constituents change (addition or deletion)

Definition at line 175 of file ConstituentItemIndexedSelectionView.h.

Member Typedef Documentation

◆ ItemVecView

template<typename ContainerView_>
using Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::ItemVecView = ContainerView_

Definition at line 180 of file ConstituentItemIndexedSelectionView.h.

◆ ThatClass

template<typename ContainerView_>
using Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::ThatClass = ConstituentItemIndexedSelectionView

Definition at line 181 of file ConstituentItemIndexedSelectionView.h.

◆ TraitsType

template<typename ContainerView_>
using Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::TraitsType = Impl::ConstituentItemIndexedSelectionViewTraits<ContainerView_>

Definition at line 182 of file ConstituentItemIndexedSelectionView.h.

◆ ValueType

template<typename ContainerView_>
using Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::ValueType = TraitsType::ValueType

Definition at line 183 of file ConstituentItemIndexedSelectionView.h.

Constructor & Destructor Documentation

◆ ConstituentItemIndexedSelectionView() [1/3]

template<typename ContainerView_>
Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::ConstituentItemIndexedSelectionView ( ItemVecView ecv,
IndexArrayView indices )
inline

Definition at line 188 of file ConstituentItemIndexedSelectionView.h.

◆ ConstituentItemIndexedSelectionView() [2/3]

template<typename ContainerView_>
Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::ConstituentItemIndexedSelectionView ( IMeshComponent * constituent,
SmallSpan< const ValueType > ecv )
inlineexplicit

Constructor from a view of ConstituentCell, MatCell or EnvCell.

Definition at line 195 of file ConstituentItemIndexedSelectionView.h.

◆ ConstituentItemIndexedSelectionView() [3/3]

template<typename ContainerView_>
Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::ConstituentItemIndexedSelectionView ( ItemVecView view)
inlineexplicitprotected

Constructs a selection containing all elements of \view (which must derive from ComponentCellVectorView).

Definition at line 205 of file ConstituentItemIndexedSelectionView.h.

Member Function Documentation

◆ IsSpanContainer()

template<typename ContainerView_>
constexpr bool Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::IsSpanContainer ( )
inlinestaticconstexpr

Definition at line 184 of file ConstituentItemIndexedSelectionView.h.

◆ item()

template<typename ContainerView_>
__host__ __device__ ValueType Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::item ( Int32 i) const
inline

Definition at line 230 of file ConstituentItemIndexedSelectionView.h.

◆ operator[]()

template<typename ContainerView_>
__host__ __device__ ValueType Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::operator[] ( Int32 i) const
inline

Definition at line 225 of file ConstituentItemIndexedSelectionView.h.

◆ selectionView()

template<typename ContainerView_>
IndexArrayView Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::selectionView ( ) const
inline

Definition at line 220 of file ConstituentItemIndexedSelectionView.h.

◆ sourceSize()

template<typename ContainerView_>
__host__ __device__ Int32 Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::sourceSize ( ) const
inline

Definition at line 214 of file ConstituentItemIndexedSelectionView.h.

◆ sourceView()

template<typename ContainerView_>
ItemVecView Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::sourceView ( ) const
inline

Definition at line 217 of file ConstituentItemIndexedSelectionView.h.

Member Data Documentation

◆ m_container_view

template<typename ContainerView_>
ItemVecView Arcane::Materials::ConstituentItemIndexedSelectionView< ContainerView_ >::m_container_view
private

View over the original elements.

Definition at line 239 of file ConstituentItemIndexedSelectionView.h.


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