AssemblerTraits< SimpleDg0ParabolicAssembler< ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE > > Struct Template Reference

#include <SimpleDg0ParabolicAssembler.hpp>

List of all members.

Public Types

typedef boost::mpl::if_
< boost::mpl::is_void_
< CONCRETE >
, SimpleDg0ParabolicAssembler
< ELEMENT_DIM, SPACE_DIM,
NON_HEART, CONCRETE >
, typename AssemblerTraits
< CONCRETE >::CVT_CLASS >
::type 
CVT_CLASS
typedef boost::mpl::if_
< boost::mpl::is_void_
< CONCRETE >
, SimpleDg0ParabolicAssembler
< ELEMENT_DIM, SPACE_DIM,
NON_HEART, CONCRETE >
, typename AssemblerTraits
< CONCRETE >::CMT_CLASS >
::type 
CMT_CLASS
typedef boost::mpl::if_
< boost::mpl::is_void_
< CONCRETE >
, AbstractAssembler
< ELEMENT_DIM, SPACE_DIM, 1u >, typename AssemblerTraits< CONCRETE >::INTERPOLATE_CLASS >::type 
INTERPOLATE_CLASS

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM, bool NON_HEART, class CONCRETE>
struct AssemblerTraits< SimpleDg0ParabolicAssembler< ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE > >

Specialization of AssemblerTraits for the SimpleDg0ParabolicAssembler.

Since this class can function both as a concrete class and as a base class, we need to use compile-time logic to work out where the methods are defined. SimpleDg0ParabolicAssembler has its CONCRETE template parameter default to boost::mpl::void_. This default value will be used if it is functioning as a concrete class, in which case all the methods must be defined in SimpleDg0ParabolicAssembler. If, on the other hand, we are a base class, then look up where the methods are defined in the traits class for the provided CONCRETE class.

Definition at line 172 of file SimpleDg0ParabolicAssembler.hpp.


Member Typedef Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM, bool NON_HEART, class CONCRETE >
typedef boost::mpl::if_<boost::mpl::is_void_<CONCRETE>, SimpleDg0ParabolicAssembler<ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE>, typename AssemblerTraits<CONCRETE>::CMT_CLASS>::type AssemblerTraits< SimpleDg0ParabolicAssembler< ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE > >::CMT_CLASS

The class in which ComputeMatrixTerm is defined.

Definition at line 184 of file SimpleDg0ParabolicAssembler.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM, bool NON_HEART, class CONCRETE >
typedef boost::mpl::if_<boost::mpl::is_void_<CONCRETE>, SimpleDg0ParabolicAssembler<ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE>, typename AssemblerTraits<CONCRETE>::CVT_CLASS>::type AssemblerTraits< SimpleDg0ParabolicAssembler< ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE > >::CVT_CLASS

The class in which ComputeVectorTerm is defined.

Definition at line 178 of file SimpleDg0ParabolicAssembler.hpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM, bool NON_HEART, class CONCRETE >
typedef boost::mpl::if_<boost::mpl::is_void_<CONCRETE>, AbstractAssembler<ELEMENT_DIM, SPACE_DIM, 1u>, typename AssemblerTraits<CONCRETE>::INTERPOLATE_CLASS>::type AssemblerTraits< SimpleDg0ParabolicAssembler< ELEMENT_DIM, SPACE_DIM, NON_HEART, CONCRETE > >::INTERPOLATE_CLASS

The class in which IncrementInterpolatedQuantities and ResetInterpolatedQuantities are defined.

Definition at line 190 of file SimpleDg0ParabolicAssembler.hpp.


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

Generated by  doxygen 1.6.2