PLaSK library
Loading...
Searching...
No Matches
plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType > Struct Template Reference

#include <plask/lazydata.hpp>

Inheritance diagram for plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >:
[legend]
Collaboration diagram for plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >:
[legend]

Public Member Functions

 ScaledLazyDataImpl (LazyData< T > data, const ScaleT &scale)
 
ReturnedType at (std::size_t index) const override
 Get index-th value from vector.
 
std::size_t size () const override
 Get the number of elements in this vector.
 
- Public Member Functions inherited from plask::LazyDataImpl< T >
virtual ~LazyDataImpl ()
 
virtual DataVector< const T > getAll () const
 Get all values as non-lazy vector.
 
virtual DataVector< T > claim () const
 

Public Attributes

LazyData< T > data
 
ScaleT scale
 

Additional Inherited Members

- Public Types inherited from plask::LazyDataImpl< T >
typedefCellType
 

Detailed Description

template<typename T, typename ScaleT, typename ReturnedType = typename std::remove_cv<decltype(T()*ScaleT())>::type>
struct plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >

Definition at line 267 of file lazydata.hpp.

Constructor & Destructor Documentation

◆ ScaledLazyDataImpl()

template<typename T , typename ScaleT , typename ReturnedType = typename std::remove_cv<decltype(T()*ScaleT())>::type>
plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >::ScaledLazyDataImpl ( LazyData< T >  data,
const ScaleT scale 
)
inline

Definition at line 273 of file lazydata.hpp.

Member Function Documentation

◆ at()

template<typename T , typename ScaleT , typename ReturnedType = typename std::remove_cv<decltype(T()*ScaleT())>::type>
ReturnedType plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >::at ( std::size_t  index) const
inlineoverridevirtual

Get index-th value from vector.

Parameters
indexshould be a value from 0 to size()-1
Returns
index-th value from vector

Implements plask::LazyDataImpl< T >.

Definition at line 276 of file lazydata.hpp.

◆ size()

template<typename T , typename ScaleT , typename ReturnedType = typename std::remove_cv<decltype(T()*ScaleT())>::type>
std::size_t plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >::size ( ) const
inlineoverridevirtual

Get the number of elements in this vector.

Returns
the number of elements in this vector

Implements plask::LazyDataImpl< T >.

Definition at line 278 of file lazydata.hpp.

Member Data Documentation

◆ data

template<typename T , typename ScaleT , typename ReturnedType = typename std::remove_cv<decltype(T()*ScaleT())>::type>
LazyData<T> plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >::data

Definition at line 269 of file lazydata.hpp.

◆ scale

template<typename T , typename ScaleT , typename ReturnedType = typename std::remove_cv<decltype(T()*ScaleT())>::type>
ScaleT plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >::scale

Definition at line 271 of file lazydata.hpp.


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