Loading [MathJax]/extensions/tex2jax.js
Cardinal
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
OpenMCAuxKernel.h
Go to the documentation of this file.
1/********************************************************************/
2/* SOFTWARE COPYRIGHT NOTIFICATION */
3/* Cardinal */
4/* */
5/* (c) 2021 UChicago Argonne, LLC */
6/* ALL RIGHTS RESERVED */
7/* */
8/* Prepared by UChicago Argonne, LLC */
9/* Under Contract No. DE-AC02-06CH11357 */
10/* With the U. S. Department of Energy */
11/* */
12/* Prepared by Battelle Energy Alliance, LLC */
13/* Under Contract No. DE-AC07-05ID14517 */
14/* With the U. S. Department of Energy */
15/* */
16/* See LICENSE for full restrictions */
17/********************************************************************/
18
19#pragma once
20
21#include "AuxKernel.h"
22#include "OpenMCBase.h"
24
25// forward declarations
26template <typename ComputeValueType>
28
32
37template <typename ComputeValueType>
38class OpenMCAuxKernelTempl : public AuxKernelTempl<ComputeValueType>, public OpenMCBase
39{
40public:
41 OpenMCAuxKernelTempl(const InputParameters & parameters);
42
43 static InputParameters validParams();
44
45protected:
46 virtual ComputeValueType computeValue() = 0;
47
54};
55
56// Prevent implicit instantiation in other translation units where these classes are used
57extern template class OpenMCAuxKernelTempl<Real>;
58extern template class OpenMCAuxKernelTempl<RealVectorValue>;
59extern template class OpenMCAuxKernelTempl<RealEigenVector>;
OpenMCAuxKernelTempl< RealVectorValue > OpenMCVectorAuxKernel
Definition OpenMCAuxKernel.h:30
OpenMCAuxKernelTempl< Real > OpenMCAuxKernel
Definition OpenMCAuxKernel.h:29
OpenMCAuxKernelTempl< RealEigenVector > OpenMCArrayAuxKernel
Definition OpenMCAuxKernel.h:31
Definition OpenMCAuxKernel.h:39
OpenMCAuxKernelTempl(const InputParameters &parameters)
virtual ComputeValueType computeValue()=0
static InputParameters validParams()
Definition OpenMCBase.h:31