44 std::vector<std::shared_ptr<Ray>> &
_rays;
virtual void generateRays() override
Subclasses should override this to determine how to generate Rays.
bool & _should_claim_rays
Whether or not we should call claimRays() on the next generateRays() (restartable) ...
const bool _define_rays_replicated
Whether or not the Rays filled into _rays are replicated across all processors.
virtual void meshChanged() override
bool & _should_define_rays
Whether or not we should call defineRays() on the next generateRays() Can be set to true in derived c...
RepeatableRayStudyBase(const InputParameters ¶meters)
std::vector< std::shared_ptr< Ray > > & _local_rays
Storage for all of the Rays this processor is responsible for (restartable)
Helper object for claiming Rays.
void verifyReplicatedRays()
Verifies that the Rays in _rays are replicated across processors.
std::vector< std::shared_ptr< Ray > > & _rays
Vector of Rays that the user will fill into in defineRays() (restartable)
const InputParameters & parameters() const
void defineRaysInternal()
ClaimRays _claim_rays
The object used to claim Rays.
const bool _claim_after_define_rays
Whether or not Rays need to be claimed after defineRays()
static InputParameters validParams()
A RayTracingStudy that generates and traces Rays repeatedly that a user defines only once...
virtual void defineRays()=0
Entry point for the user to create Rays.
Base class for Ray tracing studies that will generate Rays and then propagate all of them to terminat...