version 3.8.0
Loading...
Searching...
No Matches
propertysystem.hh File Reference

The Dumux property system, traits with inheritance. More...

#include <tuple>
#include <type_traits>
#include <dune/common/std/type_traits.hh>

Go to the source code of this file.

Description

Author
Timo Koch

Classes

struct  Dumux::Properties::UndefinedProperty
 a tag to mark properties as undefined More...
 

Namespaces

namespace  Dumux
 
namespace  Dumux::Properties
 The energy balance equation for a porous solid.
 

Macros

#define DUMUX_DEFINE_PROPERTY(Prop)
 A preprocessor macro to define properties.
 

Typedefs

template<class TypeTag , template< class, class > class Property>
using Dumux::GetProp = typename Properties::Detail::GetPropImpl<TypeTag, Property>::type
 get the type of a property
 
template<class TypeTag , template< class, class > class Property, class T >
using Dumux::GetPropOr = typename Properties::Detail::GetPropOrImpl<TypeTag, Property, T>::type
 get the type of a property or the type T if the property is undefined
 
template<class TypeTag , template< class, class > class Property>
using Dumux::GetPropType = typename GetProp<TypeTag, Property>::type
 get the type alias defined in the property
 
template<class TypeTag , template< class, class > class Property, class T >
using Dumux::GetPropTypeOr = typename GetPropOr<TypeTag, Property, T>::type
 get the type alias defined in the property or the type T if the property is undefined
 

Functions

template<class TypeTag , template< class, class > class Property>
constexpr bool Dumux::Properties::hasDefinedType ()
 whether the property is defined/specialized for TypeTag
 
template<class ParentTypeTag , class TypeTag >
constexpr bool Dumux::Properties::inheritsFrom ()
 Return true if the given type tag inherits from the given parent type tag.
 
template<class TypeTag , template< class, class > class Property>
constexpr auto Dumux::getPropValue ()
 get the value data member of a property