Tatooine
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
tatooine::detail::rectilinear_grid::vertex_property< Grid > Struct Template Referenceabstract

#include <vertex_property.h>

Inheritance diagram for tatooine::detail::rectilinear_grid::vertex_property< Grid >:
[legend]
Collaboration diagram for tatooine::detail::rectilinear_grid::vertex_property< Grid >:
[legend]

Public Types

using this_type = vertex_property< Grid >
 
using real_type = typename Grid::real_type
 
using vertex_handle = typename Grid::vertex_handle
 

Public Member Functions

 vertex_property (Grid const &g)
 
 vertex_property (vertex_property const &other)=default
 
 vertex_property (vertex_property &&other) noexcept=default
 
virtual ~vertex_property ()=default
 
virtual auto type () const -> std::type_info const &=0
 for identifying type. More...
 
virtual auto container_type () const -> std::type_info const &=0
 
virtual auto clone () const -> std::unique_ptr< this_type >=0
 
virtual auto resize (std::array< std::size_t, num_dimensions()> const &size) -> void=0
 
auto resize (integral auto const ... size) -> decltype(auto) requires(sizeof...(size)==num_dimensions())
 
auto grid () -> auto &
 
auto grid () const -> auto const &
 
auto set_grid (Grid const &g)
 
template<typename T , bool HasNonConstReference = false>
auto cast_to_typed () -> auto &
 
template<typename T , bool HasNonConstReference = false>
auto cast_to_typed () const -> auto const &
 

Static Public Member Functions

static constexpr auto num_dimensions () -> std::size_t
 

Private Attributes

Grid const * m_grid
 

Member Typedef Documentation

◆ real_type

template<typename Grid >
using tatooine::detail::rectilinear_grid::vertex_property< Grid >::real_type = typename Grid::real_type

◆ this_type

template<typename Grid >
using tatooine::detail::rectilinear_grid::vertex_property< Grid >::this_type = vertex_property<Grid>

◆ vertex_handle

template<typename Grid >
using tatooine::detail::rectilinear_grid::vertex_property< Grid >::vertex_handle = typename Grid::vertex_handle

Constructor & Destructor Documentation

◆ vertex_property() [1/3]

template<typename Grid >
tatooine::detail::rectilinear_grid::vertex_property< Grid >::vertex_property ( Grid const &  g)
inline

◆ vertex_property() [2/3]

template<typename Grid >
tatooine::detail::rectilinear_grid::vertex_property< Grid >::vertex_property ( vertex_property< Grid > const &  other)
default

◆ vertex_property() [3/3]

template<typename Grid >
tatooine::detail::rectilinear_grid::vertex_property< Grid >::vertex_property ( vertex_property< Grid > &&  other)
defaultnoexcept

◆ ~vertex_property()

template<typename Grid >
virtual tatooine::detail::rectilinear_grid::vertex_property< Grid >::~vertex_property ( )
virtualdefault

Member Function Documentation

◆ cast_to_typed() [1/2]

template<typename Grid >
template<typename T , bool HasNonConstReference = false>
auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::cast_to_typed ( ) -> auto&
inline

◆ cast_to_typed() [2/2]

template<typename Grid >
template<typename T , bool HasNonConstReference = false>
auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::cast_to_typed ( ) const -> auto const&
inline

◆ clone()

template<typename Grid >
virtual auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::clone ( ) const -> std::unique_ptr< this_type >
pure virtual

◆ container_type()

template<typename Grid >
virtual auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::container_type ( ) const -> std::type_info const &
pure virtual

◆ grid() [1/2]

template<typename Grid >
auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::grid ( ) -> auto&
inline

◆ grid() [2/2]

template<typename Grid >
auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::grid ( ) const -> auto const&
inline

◆ num_dimensions()

template<typename Grid >
static constexpr auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::num_dimensions ( ) -> std::size_t
inlinestaticconstexpr

◆ resize() [1/2]

template<typename Grid >
auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::resize ( integral auto const ...  size) -> decltype(auto) requires(sizeof...(size) == num_dimensions())
inline

◆ resize() [2/2]

template<typename Grid >
virtual auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::resize ( std::array< std::size_t, num_dimensions()> const &  size) -> void
pure virtual

◆ set_grid()

template<typename Grid >
auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::set_grid ( Grid const &  g)
inline

◆ type()

template<typename Grid >
virtual auto tatooine::detail::rectilinear_grid::vertex_property< Grid >::type ( ) const -> std::type_info const &
pure virtual

Member Data Documentation

◆ m_grid

template<typename Grid >
Grid const* tatooine::detail::rectilinear_grid::vertex_property< Grid >::m_grid
private

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