https://mooseframework.inl.gov
KillRayBC.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 #include "KillRayBC.h"
11 
12 registerMooseObject("RayTracingApp", KillRayBC);
13 
16 {
17  auto params = GeneralRayBC::validParams();
18  params.addClassDescription("A RayBC that kills a Ray on a boundary.");
19  return params;
20 }
21 
23 
24 void
25 KillRayBC::onBoundary(const unsigned int /* num_applying */)
26 {
27  // After RayBCs are completed, ray->shouldContinue() is checked and this will kill the Ray
28  currentRay()->setShouldContinue(false);
29 }
RayBC that kills a Ray.
Definition: KillRayBC.h:17
const std::shared_ptr< Ray > & currentRay() const
Gets the current Ray that this is working on.
virtual void onBoundary(const unsigned int num_applying) override
Called on a Ray on the boundary to apply the Ray boundary condition.
Definition: KillRayBC.C:25
static InputParameters validParams()
Definition: KillRayBC.C:15
KillRayBC(const InputParameters &params)
Definition: KillRayBC.C:22
static InputParameters validParams()
Definition: GeneralRayBC.C:13
registerMooseObject("RayTracingApp", KillRayBC)