EllAlgo 1.6.13
Loading...
Searching...
No Matches
Public Member Functions | List of all members
SliceView Class Reference

Proxy view over a strided slice of a flat array. More...

#include <ell_matrix.hpp>

Public Member Functions

 SliceView (double *data, std::size_t stride, std::size_t len) noexcept
 
doubleoperator[] (std::size_t i)
 
const doubleoperator[] (std::size_t i) const
 
SliceViewoperator= (const std::valarray< double > &v)
 
SliceViewoperator= (double scalar)
 
 operator std::valarray< double > () const
 
double sum () const
 

Detailed Description

Proxy view over a strided slice of a flat array.

Mimics the subset of std::slice_array<double> needed by the Matrix API: element access, assignment from valarray, assignment from scalar, and implicit conversion back to valarray. Keeps all user code unchanged.

Constructor & Destructor Documentation

◆ SliceView()

SliceView::SliceView ( double data,
std::size_t  stride,
std::size_t  len 
)
inlinenoexcept

Member Function Documentation

◆ operator std::valarray< double >()

SliceView::operator std::valarray< double > ( ) const
inline

◆ operator=() [1/2]

SliceView & SliceView::operator= ( const std::valarray< double > &  v)
inline

◆ operator=() [2/2]

SliceView & SliceView::operator= ( double  scalar)
inline

◆ operator[]() [1/2]

double & SliceView::operator[] ( std::size_t  i)
inline

◆ operator[]() [2/2]

const double & SliceView::operator[] ( std::size_t  i) const
inline

◆ sum()

double SliceView::sum ( ) const
inline

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