A simple container to hold a batch of data values.
It can operate in two modes:
Public Types | |
using | iterator = typename std::span< T >::iterator |
using | value_type = typename std::remove_cv< T >::type |
Public Member Functions | |
constexpr | RooSpan () |
constexpr | RooSpan (const RooSpan &other) |
template<typename NON_CONST_T , typename = typename std::enable_if<std::is_same<const NON_CONST_T, T>::value>::type> | |
constexpr | RooSpan (const RooSpan< NON_CONST_T > &other) |
Conversion constructor from <T> to <const T> If the input span owns some memory, the const-version of the span will copy the shared_ptr. | |
constexpr | RooSpan (const std::vector< typename std::remove_cv< T >::type > &vec) noexcept |
template<class InputIterator > | |
constexpr | RooSpan (InputIterator beginIn, InputIterator endIn) |
Construct from a range. Data held by foreign object. | |
constexpr | RooSpan (RooSpan &&other) |
constexpr | RooSpan (std::vector< typename std::remove_cv< T >::type > &vec) noexcept |
constexpr | RooSpan (std::vector< value_type > &&payload)=delete |
We cannot point to temporary data. | |
constexpr | RooSpan (typename std::span< T >::pointer beginIn, typename std::span< T >::index_type sizeIn) |
Construct from start pointer and size. | |
constexpr | RooSpan (typename std::span< T >::pointer beginIn, typename std::span< T >::pointer endIn) |
Construct from start and end pointers. | |
constexpr std::span< T >::iterator | begin () const |
constexpr std::span< T >::pointer | data () const |
constexpr bool | empty () const noexcept |
constexpr std::span< T >::iterator | end () const |
template<typename ptr_t > | |
constexpr bool | insideSpan (ptr_t ptr) const |
Test if the given pointer/iterator is inside the span. | |
constexpr bool | isBatch () const noexcept |
RooSpan & | operator= (const RooSpan &other)=default |
std::span< T >::reference | operator[] (typename std::span< T >::index_type i) const noexcept |
template<class Span_t > | |
constexpr bool | overlaps (const Span_t &other) const |
Test if the span overlaps with other . | |
constexpr std::span< T >::index_type | size () const noexcept |
Private Attributes | |
std::span< T > | _span |
#include <RooSpan.h>
using RooSpan< T >::iterator = typename std::span<T>::iterator |
|
constexprdelete |
We cannot point to temporary data.
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlinenoexcept |
|
inlineconstexprnoexcept |
|
private |