25 const std::vector<std::shared_ptr<TraceRay>> & threaded_trace_ray);
RayTracingStudy & _ray_tracing_study
The RayTracingStudy.
void postExecuteChunk(const work_iterator begin, const work_iterator end) override
bool workIsComplete(const std::shared_ptr< Ray > &ray) override
Can be overridden to denote if a piece of work is not complete yet.
RayTracingStudy & rayTracingStudy()
Get the RayTracingStudy associated with this ParallelRayStudy.
void moveWorkError(const MoveWorkError error, const std::shared_ptr< Ray > *ray) const override
const RayTracingStudy & rayTracingStudy() const
const std::vector< std::shared_ptr< TraceRay > > & _threaded_trace_ray
The TraceRay objects that do the tracing for each thread.
void postReceiveParallelData(const parallel_data_iterator begin, const parallel_data_iterator end) override
void executeWork(const std::shared_ptr< Ray > &ray, const THREAD_ID tid) override
Pure virtual to be overridden that executes a single object of work on a given thread.
MooseUtils::Buffer< std::shared_ptr< Ray > >::iterator work_iterator
MoveWorkError
Enum for providing useful errors during work addition in moveWorkError().
MooseUtils::Buffer< std::shared_ptr< Ray > >::iterator parallel_data_iterator
Base class for Ray tracing studies that will generate Rays and then propagate all of them to terminat...
Traces Rays through the mesh on a single processor.