Castor3D 0.16.0
Multiplatform 3D engine
Public Types | Public Member Functions | List of all members
castor::ArrayView< ValueT, IteratorTraitsT > Class Template Reference

Templated class that provide std::array style buffer view. More...

#include <ArrayView.hpp>

Inheritance diagram for castor::ArrayView< ValueT, IteratorTraitsT >:
Inheritance graph
[legend]

Public Types

using value_type = typename my_traits::value_type
 
using reference = typename my_traits::reference
 
using pointer = value_type *
 
using const_pointer = value_type const *
 
using iterator = typename my_traits::pointer
 
using const_iterator = const iterator
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 

Public Member Functions

 ArrayView () noexcept
 
 ArrayView (iterator begin, iterator end) noexcept
 
reference operator[] (size_t index) noexcept
 
const reference operator[] (size_t index) const noexcept
 
bool empty () const noexcept
 
size_t size () const noexcept
 
pointer data () noexcept
 
const_pointer data () const noexcept
 
reference front () noexcept
 
const reference front () const noexcept
 
iterator begin () noexcept
 
reverse_iterator rbegin () noexcept
 
const_iterator begin () const noexcept
 
const_reverse_iterator rbegin () const noexcept
 
const_iterator cbegin () const noexcept
 
const_reverse_iterator crbegin () const noexcept
 
iterator end () noexcept
 
reverse_iterator rend () noexcept
 
const_iterator end () const noexcept
 
const_reverse_iterator rend () const noexcept
 
const_iterator cend () const noexcept
 
const_reverse_iterator crend () const noexcept
 

Detailed Description

template<typename ValueT, typename IteratorTraitsT>
class castor::ArrayView< ValueT, IteratorTraitsT >

Templated class that provide std::array style buffer view.

Member Typedef Documentation

◆ const_iterator

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::const_iterator = const iterator

◆ const_pointer

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::const_pointer = value_type const *

◆ const_reverse_iterator

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::const_reverse_iterator = std::reverse_iterator< const_iterator >

◆ iterator

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::iterator = typename my_traits::pointer

◆ pointer

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::pointer = value_type *

◆ reference

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::reference = typename my_traits::reference

◆ reverse_iterator

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::reverse_iterator = std::reverse_iterator< iterator >

◆ value_type

template<typename ValueT , typename IteratorTraitsT >
using castor::ArrayView< ValueT, IteratorTraitsT >::value_type = typename my_traits::value_type

Constructor & Destructor Documentation

◆ ArrayView() [1/2]

template<typename ValueT , typename IteratorTraitsT >
castor::ArrayView< ValueT, IteratorTraitsT >::ArrayView ( )
inlinenoexcept

◆ ArrayView() [2/2]

template<typename ValueT , typename IteratorTraitsT >
castor::ArrayView< ValueT, IteratorTraitsT >::ArrayView ( iterator begin,
iterator end )
inlinenoexcept

Member Function Documentation

◆ begin() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const_iterator castor::ArrayView< ValueT, IteratorTraitsT >::begin ( ) const
inlinenoexcept

◆ begin() [2/2]

template<typename ValueT , typename IteratorTraitsT >
iterator castor::ArrayView< ValueT, IteratorTraitsT >::begin ( )
inlinenoexcept

◆ cbegin()

template<typename ValueT , typename IteratorTraitsT >
const_iterator castor::ArrayView< ValueT, IteratorTraitsT >::cbegin ( ) const
inlinenoexcept

Referenced by castor::ArrayView< ValueT, IteratorTraitsT >::crend().

Here is the caller graph for this function:

◆ cend()

template<typename ValueT , typename IteratorTraitsT >
const_iterator castor::ArrayView< ValueT, IteratorTraitsT >::cend ( ) const
inlinenoexcept

Referenced by castor::ArrayView< ValueT, IteratorTraitsT >::crbegin().

Here is the caller graph for this function:

◆ crbegin()

template<typename ValueT , typename IteratorTraitsT >
const_reverse_iterator castor::ArrayView< ValueT, IteratorTraitsT >::crbegin ( ) const
inlinenoexcept

References castor::ArrayView< ValueT, IteratorTraitsT >::cend().

Here is the call graph for this function:

◆ crend()

template<typename ValueT , typename IteratorTraitsT >
const_reverse_iterator castor::ArrayView< ValueT, IteratorTraitsT >::crend ( ) const
inlinenoexcept

References castor::ArrayView< ValueT, IteratorTraitsT >::cbegin().

Here is the call graph for this function:

◆ data() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const_pointer castor::ArrayView< ValueT, IteratorTraitsT >::data ( ) const
inlinenoexcept

◆ data() [2/2]

template<typename ValueT , typename IteratorTraitsT >
pointer castor::ArrayView< ValueT, IteratorTraitsT >::data ( )
inlinenoexcept

◆ empty()

template<typename ValueT , typename IteratorTraitsT >
bool castor::ArrayView< ValueT, IteratorTraitsT >::empty ( ) const
inlinenoexcept

◆ end() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const_iterator castor::ArrayView< ValueT, IteratorTraitsT >::end ( ) const
inlinenoexcept

◆ end() [2/2]

template<typename ValueT , typename IteratorTraitsT >
iterator castor::ArrayView< ValueT, IteratorTraitsT >::end ( )
inlinenoexcept

◆ front() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const reference castor::ArrayView< ValueT, IteratorTraitsT >::front ( ) const
inlinenoexcept

References CU_Require, and castor::ArrayView< ValueT, IteratorTraitsT >::empty().

Here is the call graph for this function:

◆ front() [2/2]

template<typename ValueT , typename IteratorTraitsT >
reference castor::ArrayView< ValueT, IteratorTraitsT >::front ( )
inlinenoexcept

References CU_Require, and castor::ArrayView< ValueT, IteratorTraitsT >::empty().

Here is the call graph for this function:

◆ operator[]() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const reference castor::ArrayView< ValueT, IteratorTraitsT >::operator[] ( size_t index) const
inlinenoexcept

References CU_Require, and castor::ArrayView< ValueT, IteratorTraitsT >::size().

Here is the call graph for this function:

◆ operator[]() [2/2]

template<typename ValueT , typename IteratorTraitsT >
reference castor::ArrayView< ValueT, IteratorTraitsT >::operator[] ( size_t index)
inlinenoexcept

References CU_Require, and castor::ArrayView< ValueT, IteratorTraitsT >::size().

Here is the call graph for this function:

◆ rbegin() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const_reverse_iterator castor::ArrayView< ValueT, IteratorTraitsT >::rbegin ( ) const
inlinenoexcept

References castor::ArrayView< ValueT, IteratorTraitsT >::end().

Here is the call graph for this function:

◆ rbegin() [2/2]

template<typename ValueT , typename IteratorTraitsT >
reverse_iterator castor::ArrayView< ValueT, IteratorTraitsT >::rbegin ( )
inlinenoexcept

References castor::ArrayView< ValueT, IteratorTraitsT >::end().

Here is the call graph for this function:

◆ rend() [1/2]

template<typename ValueT , typename IteratorTraitsT >
const_reverse_iterator castor::ArrayView< ValueT, IteratorTraitsT >::rend ( ) const
inlinenoexcept

References castor::ArrayView< ValueT, IteratorTraitsT >::begin().

Here is the call graph for this function:

◆ rend() [2/2]

template<typename ValueT , typename IteratorTraitsT >
reverse_iterator castor::ArrayView< ValueT, IteratorTraitsT >::rend ( )
inlinenoexcept

References castor::ArrayView< ValueT, IteratorTraitsT >::begin().

Here is the call graph for this function:

◆ size()

template<typename ValueT , typename IteratorTraitsT >
size_t castor::ArrayView< ValueT, IteratorTraitsT >::size ( ) const
inlinenoexcept

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