https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
MaterialProperty.h File Reference

Go to the source code of this file.

Classes

class  PropertyValue
 Abstract definition of a property value. More...
 
class  MaterialPropertyBase< T, is_ad >
 Concrete definition of a parameter value for a specified type. More...
 
class  MaterialProperty< T >
 
class  ADMaterialProperty< T >
 
class  MaterialProperties
 
class  MaterialProperties::WriteKey
 
struct  GenericMaterialPropertyStruct< T, is_ad >
 
struct  GenericMaterialPropertyStruct< T, true >
 
class  GenericOptionalMaterialPropertyBase
 Base class to facilitate storage using unique pointers. More...
 
class  GenericOptionalMaterialProperty< T, is_ad >
 Wrapper around a material property pointer. More...
 

Namespaces

namespace  moose
 
namespace  moose::internal
 

Typedefs

template<typename T , bool is_ad>
using GenericMaterialProperty = typename GenericMaterialPropertyStruct< T, is_ad >::type
 
template<typename T >
using OptionalMaterialProperty = GenericOptionalMaterialProperty< T, false >
 
template<typename T >
using OptionalADMaterialProperty = GenericOptionalMaterialProperty< T, true >
 

Functions

template<typename T1 , typename T2 >
void moose::internal::rawValueEqualityHelper (T1 &out, const T2 &in)
 
template<typename T1 , typename T2 >
void moose::internal::rawValueEqualityHelper (std::vector< T1 > &out, const std::vector< T2 > &in)
 
template<typename T1 , typename T2 , std::size_t N>
void moose::internal::rawValueEqualityHelper (std::array< T1, N > &out, const std::array< T2, N > &in)
 
void dataStore (std::ostream &stream, PropertyValue &p, void *context)
 
void dataLoad (std::istream &stream, PropertyValue &p, void *context)
 
void dataStore (std::ostream &stream, MaterialProperties &v, void *context)
 
void dataLoad (std::istream &stream, MaterialProperties &v, void *context)
 

Typedef Documentation

◆ GenericMaterialProperty

template<typename T , bool is_ad>
using GenericMaterialProperty = typename GenericMaterialPropertyStruct<T, is_ad>::type

Definition at line 439 of file MaterialProperty.h.

◆ OptionalADMaterialProperty

template<typename T >
using OptionalADMaterialProperty = GenericOptionalMaterialProperty<T, true>

Definition at line 513 of file MaterialProperty.h.

◆ OptionalMaterialProperty

template<typename T >
using OptionalMaterialProperty = GenericOptionalMaterialProperty<T, false>

Definition at line 511 of file MaterialProperty.h.

Function Documentation

◆ dataLoad() [1/2]

void dataLoad ( std::istream &  stream,
MaterialProperties v,
void *  context 
)

Definition at line 35 of file MaterialProperty.C.

36{
37 std::size_t prop_size;
38 dataLoad(stream, prop_size, context);
39 mooseAssert(prop_size == v.size(), "Loading MaterialProperties data into mis-sized target");
40
41 for (const auto i : make_range(prop_size))
42 dataLoad(stream, v[i], context);
43}
void dataLoad(std::istream &stream, PropertyValue &p, void *)
std::size_t size() const
IntRange< T > make_range(T beg, T end)

◆ dataLoad() [2/2]

void dataLoad ( std::istream &  stream,
PropertyValue p,
void *  context 
)

Definition at line 19 of file MaterialProperty.C.

20{
21 p.load(stream);
22}
virtual void load(std::istream &stream)=0

Referenced by dataLoad().

◆ dataStore() [1/2]

void dataStore ( std::ostream &  stream,
MaterialProperties v,
void *  context 
)

Definition at line 25 of file MaterialProperty.C.

26{
27 std::size_t prop_size = v.size();
28 dataStore(stream, prop_size, context);
29
30 for (const auto i : index_range(v))
31 dataStore(stream, v[i], context);
32}
void dataStore(std::ostream &stream, PropertyValue &p, void *)
auto index_range(const T &sizable)

◆ dataStore() [2/2]

void dataStore ( std::ostream &  stream,
PropertyValue p,
void *  context 
)

Definition at line 13 of file MaterialProperty.C.

14{
15 p.store(stream);
16}
virtual void store(std::ostream &stream)=0

Referenced by dataStore().