Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::VBlock Class Referencefinal

Variable size block elements for block matrices. More...

#include <core/alien/core/block/VBlock.h>

Collaboration diagram for Alien::VBlock:

Classes

struct  Internal
 Actual implementation of variable blocks size. More...

Public Types

typedef VMap< Arccore::Integer, Arccore::Integer > ValuePerBlock
 Type of the size of each block.

Public Member Functions

 VBlock (ValuePerBlock &&all_blocks_sizes)
 Rvalue constructor.
 VBlock (const ValuePerBlock &all_blocks_sizes)
 Ref constructor.
 ~VBlock ()
 Free resources.
 VBlock (const VBlock &block)
 Copy constructor.
Arccore::Integer size (Arccore::Integer index) const
 Get the size of a block.
Arccore::Integer maxBlockSize () const
 Get the max size of all block size.
const ValuePerBlockblockSizes () const
 Get the size of all blocks.
std::shared_ptr< VBlockclone () const
 Copy this object.

Private Member Functions

 VBlock (VBlock &&block)=delete
VBlockoperator= (const VBlock &block)=delete

Private Attributes

std::shared_ptr< Internalm_internal
 Actual implementation of variable blocks size.

Detailed Description

Variable size block elements for block matrices.

Defines blocks parameters that may be different for each block

Definition at line 45 of file VBlock.h.

Member Typedef Documentation

◆ ValuePerBlock

typedef VMap<Arccore::Integer, Arccore::Integer> Alien::VBlock::ValuePerBlock

Type of the size of each block.

Definition at line 49 of file VBlock.h.

Constructor & Destructor Documentation

◆ VBlock() [1/3]

Alien::VBlock::VBlock ( ValuePerBlock && all_blocks_sizes)

Rvalue constructor.

Parameters
[in]all_blocks_sizesBlock size for all blocks

Definition at line 98 of file VBlock.cc.

References m_internal, and Alien::VBlock::Internal::newVariableSizeBlock().

Referenced by VBlock().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VBlock() [2/3]

Alien::VBlock::VBlock ( const ValuePerBlock & all_blocks_sizes)

Ref constructor.

Parameters
[in]all_blocks_sizesBlock size for all blocks

Definition at line 146 of file VBlock.cc.

References m_internal, and Alien::VBlock::Internal::newVariableSizeBlock().

Here is the call graph for this function:

◆ ~VBlock()

Alien::VBlock::~VBlock ( )
inline

Free resources.

Definition at line 65 of file VBlock.h.

◆ VBlock() [3/3]

Alien::VBlock::VBlock ( const VBlock & block)

Copy constructor.

Parameters
[in]Block related APIThe block to copy

Definition at line 91 of file VBlock.cc.

References m_internal, and VBlock().

Here is the call graph for this function:

Member Function Documentation

◆ blockSizes()

const VBlock::ValuePerBlock & Alien::VBlock::blockSizes ( ) const

Get the size of all blocks.

Returns
All blocks size information

Definition at line 193 of file VBlock.cc.

References m_internal.

Referenced by Alien::VBlockSizes::VBlockSizes(), and Alien::VBlockSizes::VBlockSizes().

Here is the caller graph for this function:

◆ clone()

std::shared_ptr< VBlock > Alien::VBlock::clone ( ) const

Copy this object.

Returns
A copy of this object

Definition at line 184 of file VBlock.cc.

Referenced by Alien::MultiMatrixImpl::setBlockInfos(), Alien::MultiVectorImpl::setBlockInfos(), Alien::MultiMatrixImpl::setColBlockInfos(), and Alien::MultiMatrixImpl::setRowBlockInfos().

Here is the caller graph for this function:

◆ maxBlockSize()

Integer Alien::VBlock::maxBlockSize ( ) const

Get the max size of all block size.

Returns
The max block size

Definition at line 175 of file VBlock.cc.

References m_internal.

Referenced by Alien::NormalizeOpt::Op2::Op2(), and Alien::NormalizeOpt::Op2::Op2().

Here is the caller graph for this function:

◆ size()

Integer Alien::VBlock::size ( Arccore::Integer index) const

Get the size of a block.

Parameters
[in]indexThe index of the block the size is requested
Returns
The size of the block

Definition at line 162 of file VBlock.cc.

References m_internal.

Referenced by Alien::StreamVBlockMatrixBuilderT< ValueT >::computeProfile().

Here is the caller graph for this function:

Member Data Documentation

◆ m_internal

std::shared_ptr<Internal> Alien::VBlock::m_internal
private

Actual implementation of variable blocks size.

Definition at line 106 of file VBlock.h.

Referenced by blockSizes(), maxBlockSize(), size(), VBlock(), VBlock(), and VBlock().


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