DATAKIT SDK  V2026.1
span.hpp File Reference

Go to the source code of this file.

Data Structures

struct  dtk::DynamicExtent
 Numeric wrapping type denoting the dynamic nature of a size. More...
 
class  dtk::Span< T, DynamicExtent::value >
 Lightweight view over a contiguous sequence of objects. More...
 

Namespaces

 dtk
 

Typedefs

typedef Span< char const > dtk::ConstBuffer
 
typedef Span< char > dtk::MutableBuffer
 

Functions

template<class Range >
auto dtk::as_buffer (Range &&range) -> decltype(as_buffer(std::forward< Range >(range).data(), std::forward< Range >(range).size()))
 
template<class T >
auto dtk::as_buffer (T *data, std::size_t n) DTK_NOEXCEPT -> MutableBuffer
 
template<class T >
auto dtk::as_buffer (T const *data, std::size_t n) DTK_NOEXCEPT -> ConstBuffer
 
template<class Range >
auto dtk::as_const_buffer (Range &&range) -> ConstBuffer
 
template<class T >
auto dtk::as_const_buffer (T *data, std::size_t n) DTK_NOEXCEPT -> ConstBuffer
 
template<class T >
auto dtk::as_const_buffer (T const *data, std::size_t n) DTK_NOEXCEPT -> ConstBuffer
 
template<class Range >
auto dtk::as_const_span (Range &&range) -> Span< typename std::add_const< typename std::remove_pointer< decltype(std::forward< Range >(range).data())>::type >::type >
 
template<class T >
auto dtk::as_const_span (T *data, std::size_t n) DTK_NOEXCEPT -> Span< T const >
 
template<class T >
auto dtk::as_const_span (T const *data, std::size_t n) DTK_NOEXCEPT -> Span< T const >
 
template<class Range >
auto dtk::as_span (Range &&range) -> Span< typename std::remove_pointer< decltype(std::forward< Range >(range).data())>::type >
 
template<class T >
auto dtk::as_span (T *data, std::size_t n) DTK_NOEXCEPT -> Span< T >
 
template<class T >
auto dtk::as_span (T const *data, std::size_t n) DTK_NOEXCEPT -> Span< T const >