OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
otb::details::policy::root_layout_mapping< Extents > Struct Template Reference

#include <otbLayouts.h>

+ Inheritance diagram for otb::details::policy::root_layout_mapping< Extents >:

Public Types

using index_type = typename Extents::index_type
 

Public Member Functions

constexpr Extents const & extents () const noexcept
 
constexpr bool is_strided () const noexcept
 
constexpr bool is_unique () const noexcept
 
constexpr root_layout_mappingoperator= (root_layout_mapping &&) noexcept=default
 
constexpr root_layout_mappingoperator= (root_layout_mapping const &) noexcept=default
 
constexpr root_layout_mapping () noexcept=default
 
constexpr root_layout_mapping (Extents const &e) noexcept
 
constexpr root_layout_mapping (root_layout_mapping &&) noexcept=default
 
constexpr root_layout_mapping (root_layout_mapping const &) noexcept=default
 
 ~root_layout_mapping ()=default
 

Static Public Member Functions

static constexpr bool is_always_strided () noexcept
 
static constexpr bool is_always_unique () noexcept
 

Private Attributes

Extents m_extents
 

Detailed Description

template<typename Extents>
struct otb::details::policy::root_layout_mapping< Extents >

Helper class for defining layout_*::mapping types from C++ p0009r9 draft proposal.

Template Parameters
Extentsextents type. Only provides copy, move, is_unique(), is_strided(), and hold the extents
See also
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p0009r9.html
https://github.com/ORNL/cpp-proposals-pub/blob/master/P0009/reference-implementation

Definition at line 41 of file otbLayouts.h.

Member Typedef Documentation

◆ index_type

template<typename Extents >
using otb::details::policy::root_layout_mapping< Extents >::index_type = typename Extents::index_type

Definition at line 43 of file otbLayouts.h.

Constructor & Destructor Documentation

◆ root_layout_mapping() [1/4]

template<typename Extents >
constexpr otb::details::policy::root_layout_mapping< Extents >::root_layout_mapping ( )
constexprdefaultnoexcept

◆ root_layout_mapping() [2/4]

template<typename Extents >
constexpr otb::details::policy::root_layout_mapping< Extents >::root_layout_mapping ( root_layout_mapping< Extents > const &  )
constexprdefaultnoexcept

◆ root_layout_mapping() [3/4]

template<typename Extents >
constexpr otb::details::policy::root_layout_mapping< Extents >::root_layout_mapping ( root_layout_mapping< Extents > &&  )
constexprdefaultnoexcept

◆ root_layout_mapping() [4/4]

template<typename Extents >
constexpr otb::details::policy::root_layout_mapping< Extents >::root_layout_mapping ( Extents const &  e)
inlineconstexprnoexcept

Definition at line 51 of file otbLayouts.h.

◆ ~root_layout_mapping()

template<typename Extents >
otb::details::policy::root_layout_mapping< Extents >::~root_layout_mapping ( )
default

Member Function Documentation

◆ extents()

template<typename Extents >
constexpr Extents const& otb::details::policy::root_layout_mapping< Extents >::extents ( ) const
inlineconstexprnoexcept

◆ is_always_strided()

template<typename Extents >
static constexpr bool otb::details::policy::root_layout_mapping< Extents >::is_always_strided ( )
inlinestaticconstexprnoexcept

Definition at line 59 of file otbLayouts.h.

◆ is_always_unique()

template<typename Extents >
static constexpr bool otb::details::policy::root_layout_mapping< Extents >::is_always_unique ( )
inlinestaticconstexprnoexcept

Definition at line 58 of file otbLayouts.h.

◆ is_strided()

template<typename Extents >
constexpr bool otb::details::policy::root_layout_mapping< Extents >::is_strided ( ) const
inlineconstexprnoexcept

Definition at line 62 of file otbLayouts.h.

◆ is_unique()

template<typename Extents >
constexpr bool otb::details::policy::root_layout_mapping< Extents >::is_unique ( ) const
inlineconstexprnoexcept

Definition at line 61 of file otbLayouts.h.

◆ operator=() [1/2]

template<typename Extents >
constexpr root_layout_mapping& otb::details::policy::root_layout_mapping< Extents >::operator= ( root_layout_mapping< Extents > &&  )
constexprdefaultnoexcept

◆ operator=() [2/2]

template<typename Extents >
constexpr root_layout_mapping& otb::details::policy::root_layout_mapping< Extents >::operator= ( root_layout_mapping< Extents > const &  )
constexprdefaultnoexcept

Member Data Documentation

◆ m_extents

template<typename Extents >
Extents otb::details::policy::root_layout_mapping< Extents >::m_extents
private

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