Celeritas 0.7.0-22+develop.9704a67c5
Loading...
Searching...
No Matches
Classes | Functions
DetectorSteps.hh File Reference
#include <vector>
#include "corecel/Assert.hh"
#include "corecel/Macros.hh"
#include "corecel/cont/EnumArray.hh"
#include "corecel/data/AsyncSnapshot.hh"
#include "corecel/data/PinnedAllocator.hh"
#include "celeritas/Quantities.hh"
#include "celeritas/Types.hh"

Classes

struct  celeritas::DetectorStepPointOutput
 CPU results for detector stepping at the beginning or end of a step. More...
 
struct  celeritas::DetectorStepOutput
 CPU results for many in-detector tracks at a single step iteration. More...
 

Functions

void celeritas::copy_steps (DetectorStepOutput *output, StepStateData< Ownership::reference, MemSpace::host > const &state)
 Consolidate results from selected tracks.
 
void celeritas::compact_steps_async (StepStateData< Ownership::reference, MemSpace::device > const &state, AsyncSnapshot< size_type > &num_selected)
 
void celeritas::copy_compacted_steps_async (DetectorStepOutput *output, StepStateData< Ownership::reference, MemSpace::device > const &state, size_type num_selected, Stream const &stream)
 
void celeritas::reserve_compacted_steps (DetectorStepOutput *output, StepStateData< Ownership::reference, MemSpace::device > const &state)
 

Function Documentation

◆ copy_steps()

void celeritas::copy_steps ( DetectorStepOutput *  output,
StepStateData< Ownership::reference, MemSpace::host > const &  state 
)

Consolidate results from selected tracks.

Tracks are selected if they interacted with a detector or, if no detectors are used, if their track ID was set during gathering. Device step data is copied asynchronously with compact_steps_async and copy_compacted_steps_async.