|
Celeritas 0.7.0-dev.170+develop.df22d2a88
|
Generate photons from optical distribution data. More...
#include <GeneratorAction.hh>

Public Types | |
Type aliases | |
| using | SpanConstData = Span< GeneratorDistributionData const > |
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. | |
Public Member Functions | |
| GeneratorAction (ActionId, AuxId, GeneratorId, size_type capacity) | |
| Construct with action ID, data IDs, and optical properties. | |
| void | insert (CoreStateBase &, SpanConstData) const |
| Add user-provided host distribution data. | |
Aux interface | |
| UPState | create_state (MemSpace, StreamId, size_type) const final |
| Build state data for a stream. | |
StepAction interface | |
| void | step (CoreParams const &, CoreStateHost &) const final |
| Execute the action with host data. | |
| void | step (CoreParams const &, CoreStateDevice &) const final |
| Execute the action with device data. | |
Public Member Functions inherited from celeritas::optical::GeneratorBase | |
| GeneratorBase (ActionId id, AuxId aux_id, GeneratorId gen_id, std::string_view label, std::string_view description) noexcept(!CELERITAS_DEBUG) | |
| Construct with IDs, label, and description. | |
| template<MemSpace M> | |
| void | update_counters (optical::CoreState< M > &) const |
| Update the generator and state counters. | |
| AuxId | aux_id () const final |
| Index of this class instance in its registry. | |
| ActionId | action_id () const final |
| ID of the action. | |
| std::string_view | label () const final |
| Short name for the action. | |
| std::string_view | description () const final |
| Description of the action. | |
| StepActionOrder | order () const final |
| Dependency ordering of the action. | |
| GeneratorId | generator_id () const final |
| ID of the generator. | |
| GeneratorStateBase & | counters (AuxStateVec &) const final |
| Get generator counters (mutable). | |
| GeneratorStateBase const & | counters (AuxStateVec const &) const final |
| Get generator counters. | |
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. | |
Public Member Functions inherited from celeritas::GeneratorInterface | |
| virtual | ~GeneratorInterface () |
| Default destructor. | |
Static Public Member Functions | |
| static std::shared_ptr< GeneratorAction > | make_and_insert (::celeritas::CoreParams const &, CoreParams const &, size_type capacity) |
| Construct and add to core params. | |
Additional Inherited Members | |
Protected Member Functions inherited from celeritas::ActionInterface | |
| CELER_DEFAULT_COPY_MOVE (ActionInterface) | |
Protected Member Functions inherited from celeritas::AuxParamsInterface | |
| AuxParamsInterface ()=default | |
| CELER_DEFAULT_COPY_MOVE (AuxParamsInterface) | |
| Default destructor. | |
Protected Member Functions inherited from celeritas::GeneratorInterface | |
| CELER_DEFAULT_COPY_MOVE (GeneratorInterface) | |
Generate photons from optical distribution data.
This samples and initializes optical photons directly in a track slot in a reproducible way. Multiple threads may generate initializers from a single distribution.
|
finalvirtual |
Build state data for a stream.
Implements celeritas::AuxParamsInterface.