ARTS 2.5.9 (git: 825fa5f2)
Iterator6D Class Reference

The outermost iterator class for rank 6 tensors. More...

#include <matpackVI.h>

Public Member Functions

 Iterator6D ()=default
 Default constructor. More...
 
 Iterator6D (const Tensor5View &x, Index stride)
 Explicit constructor. More...
 
Iterator6Doperator++ ()
 Prefix increment operator. More...
 
bool operator!= (const Iterator6D &other) const
 Not equal operator, needed for algorithms like copy. More...
 
Tensor5Viewoperator-> ()
 The -> operator is needed, so that we can write i->begin() to get the 1D iterators. More...
 
Tensor5Viewoperator* ()
 Dereferencing. More...
 

Private Attributes

Tensor5View msv
 Current position. More...
 
Index mstride {0}
 Stride. More...
 

Detailed Description

The outermost iterator class for rank 6 tensors.

This takes into account the defined strided.

Definition at line 43 of file matpackVI.h.

Constructor & Destructor Documentation

◆ Iterator6D() [1/2]

Iterator6D::Iterator6D ( )
default

Default constructor.

◆ Iterator6D() [2/2]

Iterator6D::Iterator6D ( const Tensor5View x,
Index  stride 
)
inline

Explicit constructor.

Definition at line 50 of file matpackVI.h.

Member Function Documentation

◆ operator!=()

bool Iterator6D::operator!= ( const Iterator6D other) const
inline

Not equal operator, needed for algorithms like copy.

FIXME: Is it really necessary to have such a complicated check here? It could be sufficient to just test msv.mdata!=other.msv.mdata.

Definition at line 65 of file matpackVI.h.

References ConstTensor5View::mbr, ConstTensor5View::mcr, ConstTensor5View::mdata, ConstTensor5View::mpr, ConstTensor5View::mrr, ConstTensor5View::msr, Range::mstart, and msv.

◆ operator*()

Tensor5View & Iterator6D::operator* ( )
inline

Dereferencing.

Definition at line 79 of file matpackVI.h.

References msv.

◆ operator++()

Iterator6D & Iterator6D::operator++ ( )
inline

Prefix increment operator.

Definition at line 56 of file matpackVI.h.

References ConstTensor5View::mdata, mstride, and msv.

◆ operator->()

Tensor5View * Iterator6D::operator-> ( )
inline

The -> operator is needed, so that we can write i->begin() to get the 1D iterators.

Definition at line 76 of file matpackVI.h.

References msv.

Member Data Documentation

◆ mstride

Index Iterator6D::mstride {0}
private

Stride.

Definition at line 85 of file matpackVI.h.

Referenced by operator++().

◆ msv

Tensor5View Iterator6D::msv
private

Current position.

Definition at line 83 of file matpackVI.h.

Referenced by operator!=(), operator*(), operator++(), and operator->().


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