Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::detail::multi_array::const_sub_array< T, NumDims, TPtr > Class Template Reference

#include <subarray.hpp>

Inheritance diagram for boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >:
Collaboration diagram for boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >:

Classes

struct  array_view
 
struct  const_array_view
 

Public Types

typedef super_type::value_type value_type
 
typedef super_type::const_reference const_reference
 
typedef super_type::const_iterator const_iterator
 
typedef
super_type::const_reverse_iterator 
const_reverse_iterator
 
typedef super_type::element element
 
typedef super_type::size_type size_type
 
typedef super_type::difference_type difference_type
 
typedef super_type::index index
 
typedef super_type::extent_range extent_range
 
typedef types::index_range index_range
 
typedef types::reference reference
 
typedef array_iterator< T, T
*, mpl::size_t< NumDims >
, reference,
boost::random_access_traversal_tag > 
iterator
 
typedef
::boost::reverse_iterator
< iterator
reverse_iterator
 

Public Member Functions

template<typename OPtr >
 const_sub_array (const const_sub_array< T, NumDims, OPtr > &rhs)
 
const_reference operator[] (index idx) const
 
template<typename IndexList >
const elementoperator() (const IndexList &indices) const
 
template<int NDims>
const_array_view< NDims >::type operator[] (const boost::detail::multi_array::index_gen< NumDims, NDims > &indices) const
 
template<typename OPtr >
bool operator< (const const_sub_array< T, NumDims, OPtr > &rhs) const
 
template<typename OPtr >
bool operator== (const const_sub_array< T, NumDims, OPtr > &rhs) const
 
template<typename OPtr >
bool operator!= (const const_sub_array< T, NumDims, OPtr > &rhs) const
 
template<typename OPtr >
bool operator> (const const_sub_array< T, NumDims, OPtr > &rhs) const
 
template<typename OPtr >
bool operator<= (const const_sub_array< T, NumDims, OPtr > &rhs) const
 
template<typename OPtr >
bool operator>= (const const_sub_array< T, NumDims, OPtr > &rhs) const
 
const_iterator begin () const
 
const_iterator end () const
 
const_reverse_iterator rbegin () const
 
const_reverse_iterator rend () const
 
TPtr origin () const
 
size_type size () const
 
size_type max_size () const
 
bool empty () const
 
size_type num_dimensions () const
 
const size_typeshape () const
 
const indexstrides () const
 
const indexindex_bases () const
 
size_type num_elements () const
 
 BOOST_STATIC_CONSTANT (std::size_t, dimensionality=NumDims)
 

Protected Member Functions

 const_sub_array (TPtr base, const size_type *extents, const index *strides, const index *index_base)
 
template<typename Reference , typename IndexList , typename TPtr >
Reference access_element (boost::type< Reference >, const IndexList &indices, TPtr base, const size_type *extents, const index *strides, const index *index_bases) const
 
template<typename StrideList , typename ExtentList >
void compute_strides (StrideList &stride_list, ExtentList &extent_list, const general_storage_order< NumDims > &storage)
 
template<typename StrideList , typename ExtentList , typename BaseList >
index calculate_origin_offset (const StrideList &stride_list, const ExtentList &extent_list, const general_storage_order< NumDims > &storage, const BaseList &index_base_list)
 
template<typename StrideList , typename ExtentList >
index calculate_descending_dimension_offset (const StrideList &stride_list, const ExtentList &extent_list, const general_storage_order< NumDims > &storage)
 
template<typename StrideList , typename BaseList >
index calculate_indexing_offset (const StrideList &stride_list, const BaseList &index_base_list)
 
template<typename ArrayRef , int NDims, typename TPtr >
ArrayRef generate_array_view (boost::type< ArrayRef >, const boost::detail::multi_array::index_gen< NumDims, NDims > &indices, const size_type *extents, const index *strides, const index *index_bases, TPtr base) const
 

Protected Attributes

TPtr base_
 
const size_typeextents_
 
const indexstrides_
 
const indexindex_base_
 

Friends

template<typename , std::size_t >
class value_accessor_n
 
template<typename , std::size_t , typename >
class const_sub_array
 

Member Typedef Documentation

template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::const_iterator boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::const_iterator
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::const_reference boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::const_reference
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::const_reverse_iterator boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::const_reverse_iterator
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::difference_type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::difference_type
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::element boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::element
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::extent_range boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::extent_range
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::index boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::index
template<typename T , std::size_t NumDims>
typedef types::index_range boost::detail::multi_array::multi_array_impl_base< T, NumDims >::index_range
inherited
template<typename T , std::size_t NumDims>
typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference, boost::random_access_traversal_tag> boost::detail::multi_array::multi_array_impl_base< T, NumDims >::iterator
inherited
template<typename T , std::size_t NumDims>
typedef types::reference boost::detail::multi_array::multi_array_impl_base< T, NumDims >::reference
inherited
template<typename T , std::size_t NumDims>
typedef ::boost::reverse_iterator<iterator> boost::detail::multi_array::multi_array_impl_base< T, NumDims >::reverse_iterator
inherited
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::size_type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::size_type
template<typename T, std::size_t NumDims, typename TPtr>
typedef super_type::value_type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::value_type

Constructor & Destructor Documentation

template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::const_sub_array ( const const_sub_array< T, NumDims, OPtr > &  rhs)
inline
template<typename T, std::size_t NumDims, typename TPtr>
boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::const_sub_array ( TPtr  base,
const size_type extents,
const index strides,
const index index_base 
)
inlineprotected

Member Function Documentation

template<typename T , std::size_t NumDims>
boost::detail::multi_array::multi_array_impl_base< T, NumDims >::BOOST_STATIC_CONSTANT ( std::size_t  ,
dimensionality  = NumDims 
)
inherited
template<typename T , std::size_t NumDims>
template<typename StrideList , typename ExtentList >
index boost::detail::multi_array::multi_array_impl_base< T, NumDims >::calculate_descending_dimension_offset ( const StrideList &  stride_list,
const ExtentList &  extent_list,
const general_storage_order< NumDims > &  storage 
)
inlineprotectedinherited
template<typename T , std::size_t NumDims>
template<typename StrideList , typename BaseList >
index boost::detail::multi_array::multi_array_impl_base< T, NumDims >::calculate_indexing_offset ( const StrideList &  stride_list,
const BaseList &  index_base_list 
)
inlineprotectedinherited
template<typename T , std::size_t NumDims>
template<typename StrideList , typename ExtentList , typename BaseList >
index boost::detail::multi_array::multi_array_impl_base< T, NumDims >::calculate_origin_offset ( const StrideList &  stride_list,
const ExtentList &  extent_list,
const general_storage_order< NumDims > &  storage,
const BaseList &  index_base_list 
)
inlineprotectedinherited
template<typename T , std::size_t NumDims>
template<typename StrideList , typename ExtentList >
void boost::detail::multi_array::multi_array_impl_base< T, NumDims >::compute_strides ( StrideList &  stride_list,
ExtentList &  extent_list,
const general_storage_order< NumDims > &  storage 
)
inlineprotectedinherited
template<typename T, std::size_t NumDims, typename TPtr>
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::empty ( void  ) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
size_type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::max_size ( void  ) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
size_type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::num_elements ( ) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator!= ( const const_sub_array< T, NumDims, OPtr > &  rhs) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename IndexList >
const element& boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator() ( const IndexList &  indices) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator< ( const const_sub_array< T, NumDims, OPtr > &  rhs) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator<= ( const const_sub_array< T, NumDims, OPtr > &  rhs) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator== ( const const_sub_array< T, NumDims, OPtr > &  rhs) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator> ( const const_sub_array< T, NumDims, OPtr > &  rhs) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<typename OPtr >
bool boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator>= ( const const_sub_array< T, NumDims, OPtr > &  rhs) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
const_reference boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator[] ( index  idx) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
template<int NDims>
const_array_view<NDims>::type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::operator[] ( const boost::detail::multi_array::index_gen< NumDims, NDims > &  indices) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
const_reverse_iterator boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::rbegin ( ) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
const_reverse_iterator boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::rend ( ) const
inline
template<typename T, std::size_t NumDims, typename TPtr>
size_type boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::size ( void  ) const
inline

Friends And Related Function Documentation

template<typename T, std::size_t NumDims, typename TPtr>
template<typename , std::size_t , typename >
friend class const_sub_array
friend
template<typename T, std::size_t NumDims, typename TPtr>
template<typename , std::size_t >
friend class value_accessor_n
friend

Member Data Documentation

template<typename T, std::size_t NumDims, typename TPtr>
const index* boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::index_base_
protected
template<typename T, std::size_t NumDims, typename TPtr>
const index* boost::detail::multi_array::const_sub_array< T, NumDims, TPtr >::strides_
protected

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