ARTS 2.5.9 (git: 825fa5f2)
ComplexIterator2D Class Reference

The row iterator class for sub matrices. More...

#include <matpack_complex.h>

Public Member Functions

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

Private Attributes

ComplexVectorView msv
 Current position. More...
 
Index mstride {0}
 Row stride. More...
 

Detailed Description

The row iterator class for sub matrices.

This takes into account the defined row stride. The iterator points to a row of the matrix, * which acts just like a ComplexVectorView.

Definition at line 500 of file matpack_complex.h.

Constructor & Destructor Documentation

◆ ComplexIterator2D() [1/2]

ComplexIterator2D::ComplexIterator2D ( )
default

Default constructor.

◆ ComplexIterator2D() [2/2]

ComplexIterator2D::ComplexIterator2D ( const ComplexVectorView x,
Index  stride 
)
inline

Explicit constructor.

Definition at line 507 of file matpack_complex.h.

Member Function Documentation

◆ operator!=()

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

Not equal operator, needed for algorithms like copy.

Definition at line 519 of file matpack_complex.h.

References ConstComplexVectorView::mdata, ConstComplexVectorView::mrange, Range::mstart, and msv.

◆ operator*()

ComplexVectorView & ComplexIterator2D::operator* ( )
inline

Dereferencing.

Definition at line 531 of file matpack_complex.h.

References msv.

◆ operator++()

ComplexIterator2D & ComplexIterator2D::operator++ ( )
inline

Prefix increment operator.

Definition at line 513 of file matpack_complex.h.

References ConstComplexVectorView::mdata, mstride, and msv.

◆ operator->()

ComplexVectorView * ComplexIterator2D::operator-> ( )
inline

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

Definition at line 528 of file matpack_complex.h.

References msv.

Member Data Documentation

◆ mstride

Index ComplexIterator2D::mstride {0}
private

Row stride.

Definition at line 537 of file matpack_complex.h.

Referenced by operator++().

◆ msv

ComplexVectorView ComplexIterator2D::msv
private

Current position.

Definition at line 535 of file matpack_complex.h.

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


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