Celeritas 0.7.0-9+develop.0ac2b625d
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
celeritas::DetectorStepOutput Struct Reference

CPU results for many in-detector tracks at a single step iteration. More...

#include <DetectorSteps.hh>

Public Types

using Energy = units::MevEnergy
 
template<class T >
using PinnedVec = std::vector< T, PinnedAllocator< T > >
 

Public Member Functions

size_type size () const
 Number of elements in the detector output.
 
 operator bool () const
 Whether the size is nonzero.
 

Public Attributes

EnumArray< StepPoint, DetectorStepPointOutput > points
 
PinnedVec< TrackId > track_id
 
PinnedVec< DetectorId > detector_id
 
PinnedVec< EventId > event_id
 
PinnedVec< TrackId > parent_id
 
PinnedVec< PrimaryId > primary_id
 
PinnedVec< ActionId > post_step_action_id
 
PinnedVec< size_type > track_step_count
 
PinnedVec< real_type > step_length
 
PinnedVec< real_type > weight
 
PinnedVec< ParticleId > particle_id
 
PinnedVec< Energy > energy_deposition
 
size_type num_volume_levels {0}
 

Detailed Description

CPU results for many in-detector tracks at a single step iteration.

This convenience class can be used to postprocess the results from sensitive detectors on CPU. The data members will be available based on the selection of the StepInterface class that gathered the data.

Unlike StepStateData, which leaves gaps for inactive or filtered tracks, every entry of these vectors will be valid. If detectors are defined, each entry corresponds to a single DetectorId; otherwise detector_id is empty and each entry corresponds to a selected track. Entries are ordered by track slot.


The documentation for this struct was generated from the following file: