|
Celeritas 0.7.0-dev.161+develop.301cbc939
|
Launch the track only when a certain condition applies. More...
#include <TrackSlotExecutor.hh>
Public Types | |
Type aliases | |
| using | ParamsPtr = CoreParamsPtr< MemSpace::native > |
| using | StatePtr = CoreStatePtr< MemSpace::native > |
| using | Applier = T |
Public Member Functions | |
| CELER_FUNCTION | ConditionalTrackSlotExecutor (ParamsPtr params, StatePtr state, C &&applies, T &&execute_track) |
| Construct with condition and operator. | |
| CELER_FUNCTION void | operator() (TrackSlotId ts) |
| Launch the given thread if the track meets the condition. | |
| CELER_FORCEINLINE_FUNCTION void | operator() (ThreadId thread) |
| Call the underlying function using the thread index. | |
Launch the track only when a certain condition applies.
The condition C must have the signature
see make_active_track_executor for an example where this is used to apply only to active (or killed) tracks.