template<class T>
class RooSpan< T >
A simple container to hold a batch of data values.
It can operate in two modes:
- Span: It holds only a pointer to the storage held by another object like a std::span does.
- Temp data: It holds its own data, and exposes the span. This mode is necessary to ship data that are not available in a contiguous storage like e.g. data from a TTree. This means, however, that data have to be copied, and only live as long as the span.
Definition at line 34 of file RooSpan.h.
|
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 RooSpan<NON_CONST_T> to RooSpan<T> , where T is a const type.
|
|
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, std::size_t 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[] (std::size_t i) const noexcept |
|
template<class Span_t > |
constexpr bool | overlaps (const Span_t &other) const |
| Test if the span overlaps with other .
|
|
constexpr std::size_t | size () const noexcept |
|
template<class T >
template<typename NON_CONST_T , typename = typename std::enable_if<std::is_same<const NON_CONST_T, T>::value>::type>
Conversion constructor from RooSpan<NON_CONST_T>
to RooSpan<T>
, where T
is a const
type.
If the input span owns some memory, the const-version of the span will copy the shared_ptr.
Definition at line 56 of file RooSpan.h.