Celeritas  0.5.0-86+4a8eea4
Classes | Functions
track/TrackInitData.hh File Reference
#include "corecel/Types.hh"
#include "corecel/cont/Range.hh"
#include "corecel/data/Collection.hh"
#include "corecel/data/CollectionAlgorithms.hh"
#include "corecel/data/CollectionBuilder.hh"
#include "corecel/sys/Device.hh"
#include "corecel/sys/ThreadId.hh"
#include "geocel/Types.hh"
#include "celeritas/Types.hh"
#include "celeritas/phys/ParticleData.hh"
#include "celeritas/phys/Primary.hh"
#include "SimData.hh"
This graph shows which files directly or indirectly include this file:

Classes

struct  celeritas::TrackInitParamsData< W, M >
 Persistent data for track initialization. More...
 
struct  celeritas::TrackInitializer
 Lightweight version of a track used to initialize new tracks from primaries or secondaries. More...
 
struct  celeritas::TrackInitStateData< W, M >
 Storage for dynamic data used to initialize new tracks. More...
 

Functions

template<MemSpace M>
void celeritas::resize (TrackInitStateData< Ownership::value, M > *data, HostCRef< TrackInitParamsData > const &params, StreamId stream, size_type size)
 Resize and initialize track initializer data. More...
 

Function Documentation

◆ resize()

template<MemSpace M>
void celeritas::resize ( TrackInitStateData< Ownership::value, M > *  data,
HostCRef< TrackInitParamsData > const &  params,
StreamId  stream,
size_type  size 
)

Resize and initialize track initializer data.

Here size is the number of track states, and the "capacity" is the maximum number of track initializers (inactive/pending tracks) that we can hold.

Note
It's likely that for GPU runs, the capacity should be greater than the size, but that might not be the case universally, so it is not asserted.