Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Array2DataT< DataType >::Impl Class Reference
Inheritance diagram for Arcane::Array2DataT< DataType >::Impl:
Collaboration diagram for Arcane::Array2DataT< DataType >::Impl:

Public Member Functions

 Impl (Array2DataT< DataType > *p)
void reserve (Integer new_capacity) override
 Reserves memory for new_capacity elements.
void resizeOnlyDim1 (Int32 new_dim1_size) override
 Resizes the container only in dimension 1.
void resize (Int32 new_dim1_size, Int32 new_dim2_size) override
 Resizes the container.
Array2< DataType > & _internalDeprecatedValue () override
 Container associated with the data.
void shrink () const override
 Frees additional allocated memory.
bool compressAndClear (DataCompressionBuffer &buf) override
 Compresses the data and frees the associated memory.
bool decompressAndFill (DataCompressionBuffer &buf) override
 Decompresses the data and fills the data values.
MutableMemoryView memoryView () override
 Memory view of the data.
Int32 extent0 () const override
 Number of elements in the first dimension.
INumericDataInternalnumericData () override
 Generic interface for numeric data (nullptr if the data is not numeric).
void changeAllocator (const MemoryAllocationOptions &v) override
 Changes the variable's allocator.
void computeHash (DataHashInfo &hash_info) override
 Calculates the hash of the data.
IMemoryAllocatormemoryAllocator () const override
 Allocator used for the data.

Private Attributes

Array2DataT< DataType > * m_p = nullptr

Detailed Description

template<class DataType>
class Arcane::Array2DataT< DataType >::Impl

Definition at line 163 of file Array2Data.h.

Constructor & Destructor Documentation

◆ Impl()

template<class DataType>
Arcane::Array2DataT< DataType >::Impl::Impl ( Array2DataT< DataType > * p)
inlineexplicit

Definition at line 169 of file Array2Data.h.

Member Function Documentation

◆ _internalDeprecatedValue()

template<class DataType>
Array2< DataType > & Arcane::Array2DataT< DataType >::Impl::_internalDeprecatedValue ( )
inlineoverridevirtual

Container associated with the data.

Implements Arcane::IArray2DataInternalT< DataType >.

Definition at line 197 of file Array2Data.h.

◆ changeAllocator()

template<class DataType>
void Arcane::Array2DataT< DataType >::Impl::changeAllocator ( const MemoryAllocationOptions & alloc_info)
inlineoverridevirtual

Changes the variable's allocator.

Warning
For experimental use only.

Implements Arcane::INumericDataInternal.

Definition at line 239 of file Array2Data.h.

◆ compressAndClear()

template<class DataType>
bool Arcane::Array2DataT< DataType >::Impl::compressAndClear ( DataCompressionBuffer & buf)
inlineoverridevirtual

Compresses the data and frees the associated memory.

Compresses the data and fills buf with the compressed information. Then it frees the associated memory. The instance will no longer be usable until decompressAndFill() has been called.

Return values
trueif compression occurred.
falseif the instance does not support compression. In this case it remains usable.
Warning
Calling this method modifies the underlying container. If this data is associated with a variable, IVariable::syncReferences() must be called.

Reimplemented from Arcane::IDataInternal.

Definition at line 199 of file Array2Data.h.

References Arcane::asBytes(), and Arcane::IDataCompressor::compress().

Here is the call graph for this function:

◆ computeHash()

template<class DataType>
void Arcane::Array2DataT< DataType >::Impl::computeHash ( DataHashInfo & hash_info)
inlineoverridevirtual

Calculates the hash of the data.

Outputs the version and value into hash_info.m_version and hash_info.m_value.

Implements Arcane::IDataInternal.

Definition at line 240 of file Array2Data.h.

◆ decompressAndFill()

template<class DataType>
bool Arcane::Array2DataT< DataType >::Impl::decompressAndFill ( DataCompressionBuffer & buf)
inlineoverridevirtual

Decompresses the data and fills the data values.

Decompresses the data from buf and fills the values of this instance with the decompressed information.

Return values
trueif decompression occurred.
falseif no decompression occurred because the instance does not support it.
Warning
Calling this method modifies the underlying container. If this data is associated with a variable, IVariable::syncReferences() must be called.

Reimplemented from Arcane::IDataInternal.

Definition at line 213 of file Array2Data.h.

References Arcane::asWritableBytes(), and Arcane::IDataCompressor::decompress().

Here is the call graph for this function:

◆ extent0()

template<class DataType>
Int32 Arcane::Array2DataT< DataType >::Impl::extent0 ( ) const
inlineoverridevirtual

Number of elements in the first dimension.

Implements Arcane::INumericDataInternal.

Definition at line 234 of file Array2Data.h.

◆ memoryAllocator()

template<class DataType>
IMemoryAllocator * Arcane::Array2DataT< DataType >::Impl::memoryAllocator ( ) const
inlineoverridevirtual

Allocator used for the data.

Implements Arcane::INumericDataInternal.

Definition at line 244 of file Array2Data.h.

◆ memoryView()

template<class DataType>
MutableMemoryView Arcane::Array2DataT< DataType >::Impl::memoryView ( )
inlineoverridevirtual

Memory view of the data.

Implements Arcane::INumericDataInternal.

Definition at line 224 of file Array2Data.h.

References Arcane::basicDataTypeSize(), Arcane::makeMutableMemoryView(), and Arcane::Array2DataT< DataType >::value().

Here is the call graph for this function:

◆ numericData()

template<class DataType>
INumericDataInternal * Arcane::Array2DataT< DataType >::Impl::numericData ( )
inlineoverridevirtual

Generic interface for numeric data (nullptr if the data is not numeric).

Reimplemented from Arcane::IDataInternal.

Definition at line 238 of file Array2Data.h.

◆ reserve()

template<class DataType>
void Arcane::Array2DataT< DataType >::Impl::reserve ( Integer new_capacity)
inlineoverridevirtual

Reserves memory for new_capacity elements.

Implements Arcane::IArray2DataInternalT< DataType >.

Definition at line 175 of file Array2Data.h.

◆ resize()

template<class DataType>
void Arcane::Array2DataT< DataType >::Impl::resize ( Int32 new_dim1_size,
Int32 new_dim2_size )
inlineoverridevirtual

Resizes the container.

Implements Arcane::IArray2DataInternalT< DataType >.

Definition at line 180 of file Array2Data.h.

References ARCANE_FATAL.

◆ resizeOnlyDim1()

template<class DataType>
void Arcane::Array2DataT< DataType >::Impl::resizeOnlyDim1 ( Int32 new_dim1_size)
inlineoverridevirtual

Resizes the container only in dimension 1.

Implements Arcane::IArray2DataInternalT< DataType >.

Definition at line 176 of file Array2Data.h.

◆ shrink()

template<class DataType>
void Arcane::Array2DataT< DataType >::Impl::shrink ( ) const
inlineoverridevirtual

Frees additional allocated memory.

Implements Arcane::IArray2DataInternalT< DataType >.

Definition at line 198 of file Array2Data.h.

Member Data Documentation

◆ m_p

template<class DataType>
Array2DataT<DataType>* Arcane::Array2DataT< DataType >::Impl::m_p = nullptr
private

Definition at line 248 of file Array2Data.h.


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