Line data Source code
1 0 : // Distributed under the MIT License.
2 : // See LICENSE.txt for details.
3 :
4 : #pragma once
5 :
6 : #include <pup.h>
7 :
8 : #include "Domain/BoundaryConditions/BoundaryCondition.hpp"
9 :
10 1 : namespace RadiationTransport::M1Grey {
11 : /// \brief Boundary conditions for the M1Grey radiation transport system
12 1 : namespace BoundaryConditions {
13 : /// \brief The base class off of which all boundary conditions must inherit
14 : template <typename NeutrinoSpeciesList>
15 1 : class BoundaryCondition : public domain::BoundaryConditions::BoundaryCondition {
16 : public:
17 0 : BoundaryCondition() = default;
18 0 : BoundaryCondition(BoundaryCondition&&) = default;
19 0 : BoundaryCondition& operator=(BoundaryCondition&&) = default;
20 0 : BoundaryCondition(const BoundaryCondition&) = default;
21 0 : BoundaryCondition& operator=(const BoundaryCondition&) = default;
22 0 : ~BoundaryCondition() override = default;
23 :
24 0 : explicit BoundaryCondition(CkMigrateMessage* const msg)
25 : : domain::BoundaryConditions::BoundaryCondition(msg) {}
26 :
27 0 : void pup(PUP::er& p) override {
28 : domain::BoundaryConditions::BoundaryCondition::pup(p);
29 : }
30 : };
31 : } // namespace BoundaryConditions
32 : } // namespace RadiationTransport::M1Grey
|