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::multi_array_view< T, NumDims > Class Template Reference

#include <view.hpp>

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

Classes

struct  array_view
 
struct  const_array_view
 

Public Types

typedef super_type::value_type value_type
 
typedef super_type::reference reference
 
typedef super_type::iterator iterator
 
typedef
super_type::reverse_iterator 
reverse_iterator
 
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
 

Public Member Functions

template<typename ConstMultiArray >
multi_array_viewoperator= (const ConstMultiArray &other)
 
multi_array_viewoperator= (const multi_array_view &other)
 
elementorigin ()
 
template<class IndexList >
elementoperator() (const IndexList &indices)
 
reference operator[] (index idx)
 
template<int NDims>
array_view< NDims >::type operator[] (const boost::detail::multi_array::index_gen< NumDims, NDims > &indices)
 
iterator begin ()
 
iterator end ()
 
reverse_iterator rbegin ()
 
reverse_iterator rend ()
 
const elementorigin () const
 
template<class IndexList >
const elementoperator() (const IndexList &indices) const
 
const_reference operator[] (index idx) const
 
template<int NDims>
const_array_view< NDims >::type operator[] (const boost::detail::multi_array::index_gen< NumDims, NDims > &indices) const
 
const_iterator begin () const
 
const_iterator end () const
 
const_reverse_iterator rbegin () const
 
const_reverse_iterator rend () const
 
disable_if< typename
boost::is_integral< BaseList >
::type, void >::type 
reindex (const BaseList &values)
 
void reindex (index value)
 
size_type num_dimensions () const
 
size_type size () const
 
size_type max_size () const
 
bool empty () const
 
const size_typeshape () const
 
const indexstrides () const
 
size_type num_elements () const
 
const indexindex_bases () const
 
const elementoperator() (IndexList indices) const
 
const_reference operator[] (index idx) const
 
bool operator== (const const_multi_array_view< T, NumDims, OPtr > &rhs) const
 
bool operator< (const const_multi_array_view< T, NumDims, OPtr > &rhs) const
 
bool operator!= (const const_multi_array_view< T, NumDims, OPtr > &rhs) const
 
bool operator> (const const_multi_array_view< T, NumDims, OPtr > &rhs) const
 
bool operator<= (const const_multi_array_view< T, NumDims, OPtr > &rhs) const
 
bool operator>= (const const_multi_array_view< T, NumDims, OPtr > &rhs) const
 
 BOOST_STATIC_CONSTANT (std::size_t, dimensionality=NumDims)
 

Protected Types

typedef boost::array
< size_type, NumDims > 
size_list
 
typedef boost::array< index,
NumDims > 
index_list
 

Protected Member Functions

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

Tbase_
 
index origin_offset_
 
size_type num_elements_
 
size_list extent_list_
 
index_list stride_list_
 
index_list index_base_list_
 

Friends

template<typename , std::size_t >
class multi_array_impl_base
 

Member Typedef Documentation

template<typename T , std::size_t NumDims>
typedef super_type::const_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::const_iterator
template<typename T , std::size_t NumDims>
typedef super_type::const_reference boost::detail::multi_array::multi_array_view< T, NumDims >::const_reference
template<typename T , std::size_t NumDims>
typedef super_type::const_reverse_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::const_reverse_iterator
template<typename T , std::size_t NumDims>
typedef super_type::difference_type boost::detail::multi_array::multi_array_view< T, NumDims >::difference_type
template<typename T , std::size_t NumDims>
typedef super_type::element boost::detail::multi_array::multi_array_view< T, NumDims >::element
template<typename T , std::size_t NumDims>
typedef super_type::extent_range boost::detail::multi_array::multi_array_view< T, NumDims >::extent_range
template<typename T , std::size_t NumDims>
typedef super_type::index boost::detail::multi_array::multi_array_view< T, NumDims >::index
typedef boost::array<index,NumDims> boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::index_list
protectedinherited
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 super_type::iterator boost::detail::multi_array::multi_array_view< T, NumDims >::iterator
template<typename T , std::size_t NumDims>
typedef super_type::reference boost::detail::multi_array::multi_array_view< T, NumDims >::reference
template<typename T , std::size_t NumDims>
typedef super_type::reverse_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::reverse_iterator
typedef boost::array<size_type,NumDims> boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::size_list
protectedinherited
template<typename T , std::size_t NumDims>
typedef super_type::size_type boost::detail::multi_array::multi_array_view< T, NumDims >::size_type
template<typename T , std::size_t NumDims>
typedef super_type::value_type boost::detail::multi_array::multi_array_view< T, NumDims >::value_type

Member Function Documentation

template<typename T , std::size_t NumDims>
const_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::begin ( void  ) const
inline
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>
const_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::end ( void  ) const
inline
bool boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::operator!= ( const const_multi_array_view< T, NumDims, OPtr > &  rhs) const
inlineinherited
template<typename T , std::size_t NumDims>
template<class IndexList >
const element& boost::detail::multi_array::multi_array_view< T, NumDims >::operator() ( const IndexList &  indices) const
inline
bool boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::operator<= ( const const_multi_array_view< T, NumDims, OPtr > &  rhs) const
inlineinherited
bool boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::operator> ( const const_multi_array_view< T, NumDims, OPtr > &  rhs) const
inlineinherited
bool boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::operator>= ( const const_multi_array_view< T, NumDims, OPtr > &  rhs) const
inlineinherited
template<typename T , std::size_t NumDims>
const_reference boost::detail::multi_array::multi_array_view< T, NumDims >::operator[] ( index  idx) const
inline
template<typename T , std::size_t NumDims>
template<int NDims>
const_array_view<NDims>::type boost::detail::multi_array::multi_array_view< T, NumDims >::operator[] ( const boost::detail::multi_array::index_gen< NumDims, NDims > &  indices) const
inline
template<typename T , std::size_t NumDims>
const element* boost::detail::multi_array::multi_array_view< T, NumDims >::origin ( ) const
inline
template<typename T , std::size_t NumDims>
reverse_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::rbegin ( )
inline
template<typename T , std::size_t NumDims>
reverse_iterator boost::detail::multi_array::multi_array_view< T, NumDims >::rend ( )
inline

Friends And Related Function Documentation

template<typename T , std::size_t NumDims>
template<typename , std::size_t >
friend class multi_array_impl_base
friend

Member Data Documentation

size_list boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::extent_list_
protectedinherited
index_list boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::index_base_list_
protectedinherited
size_type boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::num_elements_
protectedinherited
index_list boost::detail::multi_array::const_multi_array_view< T, NumDims, T * >::stride_list_
protectedinherited

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