Celeritas  0.5.0-56+6b053cd
Classes | Enumerations | Functions
corecel/sys/ActionInterface.hh File Reference
#include <string>
#include <string_view>
#include "corecel/cont/Span.hh"
#include "ThreadId.hh"
This graph shows which files directly or indirectly include this file:

Classes

class  celeritas::ActionInterface
 Pure abstract interface for an action that could happen to a track. More...
 
class  celeritas::MutableActionInterface
 Interface that can modify the action's state. More...
 
struct  celeritas::ActionTypeTraits< P, S >
 Traits class for actions that modify or access params/state. More...
 
class  celeritas::BeginRunActionInterface< P, S >
 Interface for updating states at the beginning of the simulation. More...
 
class  celeritas::StepActionInterface< P, S >
 Interface for kernel actions in a stepping loop. More...
 
class  celeritas::ConcreteAction
 Concrete mixin utility class for managing an action. More...
 
class  celeritas::StaticActionData
 Concrete utility class for managing an action with static strings. More...
 
class  celeritas::StaticConcreteAction
 Concrete mixin utility class for managing an action with static strings. More...
 
struct  celeritas::OrderedAction
 Action order/ID tuple for comparison in sorting. More...
 

Enumerations

enum class  celeritas::StepActionOrder {
  generate , start , user_start , sort_start ,
  pre , user_pre , sort_pre , along ,
  sort_along , pre_post , sort_pre_post , post ,
  user_post , end , size_
}
 Within-step ordering of explicit actions. More...
 

Functions

char const * celeritas::to_cstring (StepActionOrder value)
 Get a string corresponding to an action order.
 

Enumeration Type Documentation

◆ StepActionOrder

Within-step ordering of explicit actions.

Each "step iteration", wherein many tracks undergo a single step in parallel, consists of an ordered series of actions. An action with an earlier order always precedes an action with a later order.

See also
StepActionInterface
Enumerator
generate 

Fill new track initializers.

start 

Initialize tracks.

user_start 

User initialization of new tracks.

sort_start 

Sort track slots after initialization.

pre 

Pre-step physics and setup.

user_pre 

User actions for querying pre-step data.

sort_pre 

Sort track slots after setting pre-step.

along 

Along-step.

sort_along 

Sort track slots after determining first step action.

pre_post 

Discrete selection kernel.

post 

Sort track slots after selecting discrete interaction.

After step

user_post 

User actions after boundary crossing, collision.

end 

Processing secondaries, including replacing primaries.