OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr Class Reference

Proxy for accessing a column vector entry. More...

#include <fieldArrayD.h>

+ Inheritance diagram for olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr:
+ Collaboration diagram for olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr:

Public Member Functions

 ptr (AbstractFieldArrayD< T, DESCRIPTOR, FIELD > &data, std::size_t index)
 
 ptr (ptr &&rhs)
 
template<typename U , typename IMPL >
ptroperator= (const GenericVector< U, DESCRIPTOR::template size< FIELD >(), IMPL > &rhs)
 
std::size_t getIndex () const
 
void setIndex (std::size_t index)
 
- Public Member Functions inherited from olb::ScalarVector< FIELD::template value_type< T >, DESCRIPTOR::template size< FIELD >(), ptr >
constexpr ScalarVector ()=default
 
 ScalarVector (const ScalarVector &)=delete
 
 ScalarVector (ScalarVector &&)=delete
 
- Public Member Functions inherited from olb::GenericVector< T, D, IMPL >
constexpr GenericVector ()=default
 
 GenericVector (const GenericVector &)=delete
 
 GenericVector (GenericVector &&)=delete
 
GenericVectoroperator= (GenericVector &&rhs)=delete
 
constexpr const T & operator[] (unsigned iDim) const any_platform
 
constexpr T & operator[] (unsigned iDim) any_platform
 
template<typename IMPL_ >
constexpr IMPL & operator= (const GenericVector< T, D, IMPL_ > &rhs) any_platform
 
template<typename U , typename IMPL_ >
constexpr IMPL & operator+= (const GenericVector< U, D, IMPL_ > &rhs) any_platform
 
template<typename IMPL_ >
constexpr IMPL & operator-= (const GenericVector< T, D, IMPL_ > &rhs) any_platform
 
template<typename U , typename IMPL_ >
constexpr IMPL & operator*= (const GenericVector< U, D, IMPL_ > &rhs) any_platform
 
template<typename U >
constexpr meta::enable_if_arithmetic_t< U, IMPL & > operator+= (const U &rhs) any_platform
 
template<typename U >
constexpr meta::enable_if_arithmetic_t< U, IMPL & > operator-= (const U &rhs) any_platform
 
template<typename U >
constexpr meta::enable_if_arithmetic_t< U, IMPL & > operator*= (const U &rhs) any_platform
 
template<typename U >
constexpr meta::enable_if_arithmetic_t< U, IMPL & > operator/= (const U &rhs) any_platform
 
template<typename IMPL_ >
constexpr bool operator== (const GenericVector< T, D, IMPL_ > &rhs) const any_platform
 
template<typename IMPL_ >
constexpr bool operator!= (const GenericVector< T, D, IMPL_ > &rhs) const any_platform
 

Protected Member Functions

const FIELD::template value_type< T > * getComponentPointer (unsigned iDim) const
 
FIELD::template value_type< T > * getComponentPointer (unsigned iDim)
 

Additional Inherited Members

- Public Types inherited from olb::ScalarVector< FIELD::template value_type< T >, DESCRIPTOR::template size< FIELD >(), ptr >
using type
 
- Public Types inherited from olb::GenericVector< T, D, IMPL >
using value_type = T
 
- Static Public Member Functions inherited from olb::GenericVector< T, D, IMPL >
static constexpr unsigned size ()
 
- Static Public Attributes inherited from olb::GenericVector< T, D, IMPL >
static constexpr unsigned d = D
 

Detailed Description

template<typename T, typename DESCRIPTOR, typename FIELD>
class olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr

Proxy for accessing a column vector entry.

Definition at line 147 of file fieldArrayD.h.

Constructor & Destructor Documentation

◆ ptr() [1/2]

template<typename T , typename DESCRIPTOR , typename FIELD >
olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::ptr ( AbstractFieldArrayD< T, DESCRIPTOR, FIELD > & data,
std::size_t index )
inline

Definition at line 171 of file fieldArrayD.h.

171 :
172 _data(data),
173 _index(index) { }

◆ ptr() [2/2]

template<typename T , typename DESCRIPTOR , typename FIELD >
olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::ptr ( ptr && rhs)
inline

Definition at line 175 of file fieldArrayD.h.

175 :
176 _data(rhs._data),
177 _index(rhs._index) { }

Member Function Documentation

◆ getComponentPointer() [1/2]

template<typename T , typename DESCRIPTOR , typename FIELD >
FIELD::template value_type< T > * olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::getComponentPointer ( unsigned iDim)
inlineprotected

Definition at line 165 of file fieldArrayD.h.

166 {
167 return &_data[iDim][_index];
168 }

◆ getComponentPointer() [2/2]

template<typename T , typename DESCRIPTOR , typename FIELD >
const FIELD::template value_type< T > * olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::getComponentPointer ( unsigned iDim) const
inlineprotected

Definition at line 160 of file fieldArrayD.h.

161 {
162 return &_data[iDim][_index];
163 }

◆ getIndex()

template<typename T , typename DESCRIPTOR , typename FIELD >
std::size_t olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::getIndex ( ) const
inline

Definition at line 188 of file fieldArrayD.h.

189 {
190 return _index;
191 }

◆ operator=()

template<typename T , typename DESCRIPTOR , typename FIELD >
template<typename U , typename IMPL >
ptr & olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::operator= ( const GenericVector< U, DESCRIPTOR::template size< FIELD >(), IMPL > & rhs)
inline

Definition at line 180 of file fieldArrayD.h.

181 {
182 for (unsigned iD=0; iD < DESCRIPTOR::template size<FIELD>(); ++iD) {
183 this->operator[](iD) = rhs[iD];
184 }
185 return *this;
186 }
const auto & operator[](unsigned iDim) const
Definition fieldArrayD.h:59

References olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::operator[]().

+ Here is the call graph for this function:

◆ setIndex()

template<typename T , typename DESCRIPTOR , typename FIELD >
void olb::AbstractFieldArrayD< T, DESCRIPTOR, FIELD >::ptr::setIndex ( std::size_t index)
inline

Definition at line 193 of file fieldArrayD.h.

194 {
195 _index = index;
196 }

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