www.mooseframework.org
TwoMaterialPropertyInterface.C
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14 
16 #include "MaterialData.h"
17 #include "InputParameters.h"
18 
19 template <>
22 {
23  // Objects inheriting from TwoMaterialPropertyInterface rely on Boundary MaterialData
25  params.set<Moose::MaterialDataType>("_material_data_type") = Moose::BOUNDARY_MATERIAL_DATA;
26  return params;
27 }
28 
30  : MaterialPropertyInterface(moose_object),
31  _neighbor_material_data(_mi_feproblem.getMaterialData(Moose::NEIGHBOR_MATERIAL_DATA,
32  _mi_params.get<THREAD_ID>("_tid")))
33 {
34 }
35 
37  const std::set<SubdomainID> & blocks_ids)
38  : MaterialPropertyInterface(moose_object, blocks_ids),
40  _mi_params.get<THREAD_ID>("_tid")))
41 {
42 }
44  const MooseObject * moose_object, const std::set<BoundaryID> & boundary_ids)
45  : MaterialPropertyInterface(moose_object, boundary_ids),
47  _mi_params.get<THREAD_ID>("_tid")))
48 {
49 }
50 
52  const MooseObject * moose_object,
53  const std::set<SubdomainID> & blocks_ids,
54  const std::set<BoundaryID> & boundary_ids)
55  : MaterialPropertyInterface(moose_object, blocks_ids, boundary_ids),
57  _mi_params.get<THREAD_ID>("_tid")))
58 {
59 }
InputParameters validParams< MaterialPropertyInterface >()
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
TwoMaterialPropertyInterface(const MooseObject *moose_object)
MaterialDataType
MaterialData types.
Definition: MooseTypes.h:129
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
std::shared_ptr< MaterialData > _neighbor_material_data
Every object that can be built by the factory should be derived from this class.
Definition: MooseObject.h:36
const InputParameters & _mi_params
Parameters of the object with this interface.
An interface for accessing Materials.
Definition: Moose.h:84
InputParameters validParams< TwoMaterialPropertyInterface >()
unsigned int THREAD_ID
Definition: MooseTypes.h:79