Celeritas  0.5.0-56+6b053cd
Public Member Functions | Static Public Member Functions | List of all members
celeritas::ExtendFromPrimariesAction Class Referencefinal

Create track initializers from queued host primary particles. More...

#include <ExtendFromPrimariesAction.hh>

Inheritance diagram for celeritas::ExtendFromPrimariesAction:
Inheritance graph
[legend]

Public Member Functions

 ExtendFromPrimariesAction (ActionId action_id, AuxId aux_id)
 Construct with ids.
 
void insert (CoreParams const &params, CoreStateInterface &state, Span< Primary const > host_primaries) const
 Add user-provided primaries on host.
 
Metadata interface
std::string_view label () const final
 Label for the auxiliary data.
 
std::string_view description () const final
 Description of the action.
 
Step action interface

ID of the action

ActionId action_id () const final
 Dependency ordering of the action.
 
StepActionOrder order () const final
 Dependency ordering of the action.
 
void step (CoreParams const &params, CoreStateHost &state) const final
 Execute the action with host data.
 
void step (CoreParams const &params, CoreStateDevice &state) const final
 Execute the action with device data.
 
Aux params interface

Index of this class instance in its registry

AuxId aux_id () const final
 Build state data for a stream.
 
UPState create_state (MemSpace m, StreamId id, size_type size) const final
 Build state data for a stream.
 
- Public Member Functions inherited from celeritas::StepActionInterface< P, S >
virtual void step (P const &, S< MemSpace::host > &) const =0
 Execute the action with host data.
 
virtual void step (P const &, S< MemSpace::device > &) const =0
 Execute the action with device data.
 
- Public Member Functions inherited from celeritas::ActionInterface
virtual ~ActionInterface () noexcept=0
 Default destructor.
 
- Public Member Functions inherited from celeritas::AuxParamsInterface
virtual ~AuxParamsInterface ()
 Default destructor.
 

Static Public Member Functions

static std::shared_ptr< ExtendFromPrimariesActionmake_and_insert (CoreParams const &core)
 Construct and add to core params.
 
static std::shared_ptr< ExtendFromPrimariesAction const > find_action (CoreParams const &core)
 Hacky helper function to get the primary action from core params. More...
 

Additional Inherited Members

- Public Types inherited from celeritas::ActionTypeTraits< P, S >
using CoreParams = P
 
using CoreStateHost = S< MemSpace::host >
 
using CoreStateDevice = S< MemSpace::device >
 
using SpanCoreStateHost = Span< S< MemSpace::host > *const >
 
using SpanCoreStateDevice = Span< S< MemSpace::device > *const >
 
- Public Types inherited from celeritas::AuxParamsInterface
using UPState = std::unique_ptr< AuxStateInterface >
 Default destructor.
 
- Protected Member Functions inherited from celeritas::ActionInterface
 ActionInterface ()=default
 
 CELER_DEFAULT_COPY_MOVE (ActionInterface)
 
- Protected Member Functions inherited from celeritas::AuxParamsInterface
 AuxParamsInterface ()=default
 
 CELER_DEFAULT_COPY_MOVE (AuxParamsInterface)
 Default destructor.
 

Detailed Description

Create track initializers from queued host primary particles.

Todo:
Change "generate" step order to be at the end of the loop alongside create secondaries, and execute the action immediately after adding primaries.

Member Function Documentation

◆ find_action()

std::shared_ptr< ExtendFromPrimariesAction const > celeritas::ExtendFromPrimariesAction::find_action ( CoreParams const &  core)
static

Hacky helper function to get the primary action from core params.

This is intended only as a transitional helper function and SHOULD NOT BE USED.

Returns
action if it exists, nullptr if not

The documentation for this class was generated from the following files: