https://mooseframework.inl.gov
KokkosKernelBase.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "KokkosResidualObject.h"
13 
14 #include "BlockRestrictable.h"
17 
18 namespace Moose
19 {
20 namespace Kokkos
21 {
22 
26 class KernelBase : public ResidualObject,
27  public BlockRestrictable,
30 {
31 public:
33 
42  KernelBase(const KernelBase & object);
43 };
44 
45 } // namespace Kokkos
46 } // namespace Moose
47 
48 #define usingKokkosKernelBaseMembers \
49  usingKokkosResidualObjectMembers; \
50  \
51 protected: \
52  using Moose::Kokkos::KernelBase::kokkosBlockElementID
VarFieldType
Definition: MooseTypes.h:722
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseBase.h:131
static InputParameters validParams()
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
The base class for Kokkos residual objects.
The base class for Kokkos kernels.
KernelBase(const InputParameters &parameters, Moose::VarFieldType field_type)
Constructor.
An interface for accessing Materials.
Intermediate base class that ties together all the interfaces for getting MooseVariableFEBases with t...
An interface that restricts an object to subdomains via the 'blocks' input parameter.
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...