OpenLB 1.7
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
olb::ParametersD< T, DESCRIPTOR, FIELDS > Struct Template Referencefinal

Set of FIELD-valued parameters. More...

#include <fieldParametersD.h>

+ Inheritance diagram for olb::ParametersD< T, DESCRIPTOR, FIELDS >:
+ Collaboration diagram for olb::ParametersD< T, DESCRIPTOR, FIELDS >:

Public Types

using fields_t = meta::list<FIELDS...>
 
template<typename... Fs>
using include_fields = ParametersD<T,DESCRIPTOR,FIELDS...,Fs...>
 
template<typename FIELD_LIST >
using include = typename FIELD_LIST::template decompose_into<include_fields>
 Return ParametersD containing FIELDS in addition to all entries of FIELD_LIST.
 
- Public Types inherited from olb::ParameterD< T, DESCRIPTOR, FIELDS >
using data_t
 

Public Member Functions

 ParametersD ()=default
 
template<typename V >
 ParametersD (const ParametersD< V, DESCRIPTOR, FIELDS... > &rhs) any_platform
 
template<typename FIELD >
bool provides () const any_platform
 
template<typename FIELD >
const auto & get () const any_platform
 
template<typename V >
ParametersD< V, DESCRIPTOR, FIELDS... > copyAs () const any_platform
 
template<typename FIELD >
auto & get () any_platform
 
template<typename FIELD >
void set (FieldD< T, DESCRIPTOR, FIELD > &&value) any_platform
 
template<typename FIELD >
void set (const FieldD< T, DESCRIPTOR, FIELD > &value) any_platform
 
- Public Member Functions inherited from olb::AbstractParameters< T, DESCRIPTOR >
virtual ~AbstractParameters ()=default
 
template<typename FIELD >
bool provides () const
 
template<typename FIELD >
auto get () const
 
template<typename FIELD >
auto getOrFallback (typename ParameterD< T, DESCRIPTOR, FIELD >::data_t &&fallback) const
 
template<typename FIELD >
void set (FieldD< T, DESCRIPTOR, FIELD > &&value)
 
template<typename FIELD >
void set (const FieldD< T, DESCRIPTOR, FIELD > &value)
 
- Public Member Functions inherited from olb::ParameterD< T, DESCRIPTOR, FIELDS >
 ParameterD ()=default
 
 ParameterD (const ParameterD< V, DESCRIPTOR, FIELDS > &rhs) any_platform
 
const auto & read () const any_platform
 
auto & read () any_platform
 
void write (FieldD< T, DESCRIPTOR, FIELDS > &&value) any_platform
 
void write (const FieldD< T, DESCRIPTOR, FIELDS > &value) any_platform
 

Detailed Description

template<typename T, typename DESCRIPTOR, typename... FIELDS>
struct olb::ParametersD< T, DESCRIPTOR, FIELDS >

Set of FIELD-valued parameters.

Definition at line 131 of file fieldParametersD.h.

Member Typedef Documentation

◆ fields_t

template<typename T , typename DESCRIPTOR , typename... FIELDS>
using olb::ParametersD< T, DESCRIPTOR, FIELDS >::fields_t = meta::list<FIELDS...>

Definition at line 134 of file fieldParametersD.h.

◆ include

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename FIELD_LIST >
using olb::ParametersD< T, DESCRIPTOR, FIELDS >::include = typename FIELD_LIST::template decompose_into<include_fields>

Return ParametersD containing FIELDS in addition to all entries of FIELD_LIST.

Definition at line 140 of file fieldParametersD.h.

◆ include_fields

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename... Fs>
using olb::ParametersD< T, DESCRIPTOR, FIELDS >::include_fields = ParametersD<T,DESCRIPTOR,FIELDS...,Fs...>

Definition at line 137 of file fieldParametersD.h.

Constructor & Destructor Documentation

◆ ParametersD() [1/2]

template<typename T , typename DESCRIPTOR , typename... FIELDS>
olb::ParametersD< T, DESCRIPTOR, FIELDS >::ParametersD ( )
default

◆ ParametersD() [2/2]

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename V >
olb::ParametersD< T, DESCRIPTOR, FIELDS >::ParametersD ( const ParametersD< V, DESCRIPTOR, FIELDS... > & rhs)
inline

Definition at line 145 of file fieldParametersD.h.

145 :
146 ParameterD<T,DESCRIPTOR,FIELDS>(static_cast<const ParameterD<T,DESCRIPTOR,FIELDS>&>(rhs))...
147 { }

Member Function Documentation

◆ copyAs()

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename V >
ParametersD< V, DESCRIPTOR, FIELDS... > olb::ParametersD< T, DESCRIPTOR, FIELDS >::copyAs ( ) const
inline

Definition at line 160 of file fieldParametersD.h.

160 {
161 return ParametersD<V,DESCRIPTOR,FIELDS...>(*this);
162 }
ParametersD()=default

◆ get() [1/2]

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename FIELD >
auto & olb::ParametersD< T, DESCRIPTOR, FIELDS >::get ( )
inline

Definition at line 165 of file fieldParametersD.h.

165 {
166 return static_cast<ParameterD<T,DESCRIPTOR,FIELD>*>(this)->read();
167 }
const auto & read() const any_platform

References olb::ParameterD< T, DESCRIPTOR, FIELDS >::read().

+ Here is the call graph for this function:

◆ get() [2/2]

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename FIELD >
const auto & olb::ParametersD< T, DESCRIPTOR, FIELDS >::get ( ) const
inline

Definition at line 155 of file fieldParametersD.h.

155 {
156 return static_cast<const ParameterD<T,DESCRIPTOR,FIELD>*>(this)->read();
157 }

References olb::ParameterD< T, DESCRIPTOR, FIELDS >::read().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ provides()

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename FIELD >
bool olb::ParametersD< T, DESCRIPTOR, FIELDS >::provides ( ) const
inline

Definition at line 150 of file fieldParametersD.h.

150 {
151 return fields_t::template contains<FIELD>();
152 }

◆ set() [1/2]

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename FIELD >
void olb::ParametersD< T, DESCRIPTOR, FIELDS >::set ( const FieldD< T, DESCRIPTOR, FIELD > & value)
inline

Definition at line 176 of file fieldParametersD.h.

176 {
177 return static_cast<ParameterD<T,DESCRIPTOR,FIELD>*>(this)->write(value);
178 };
void write(FieldD< T, DESCRIPTOR, FIELDS > &&value) any_platform

References olb::ParameterD< T, DESCRIPTOR, FIELDS >::write().

+ Here is the call graph for this function:

◆ set() [2/2]

template<typename T , typename DESCRIPTOR , typename... FIELDS>
template<typename FIELD >
void olb::ParametersD< T, DESCRIPTOR, FIELDS >::set ( FieldD< T, DESCRIPTOR, FIELD > && value)
inline

Definition at line 170 of file fieldParametersD.h.

170 {
171 return static_cast<ParameterD<T,DESCRIPTOR,FIELD>*>(this)->write(
172 std::forward<decltype(value)>(value));
173 };
typename std::integral_constant< TYPE, VALUE >::type value
Identity type to wrap non-type template arguments.
Definition meta.h:96

References olb::ParameterD< T, DESCRIPTOR, FIELDS >::write().

+ Here is the call graph for this function:

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