Celeritas
0.5.0-86+4a8eea4
|
Helper class for retrieving templated state data on a single stream. More...
#include <AuxStateData.hh>
Public Types | |
Type aliases | |
using | Ref = S< Ownership::reference, M > |
Public Types inherited from celeritas::AuxStateInterface | |
using | SPState = std::shared_ptr< AuxStateInterface > |
Default destructor. | |
Public Member Functions | |
template<template< Ownership, MemSpace > class P> | |
AuxStateData (HostCRef< P > const &p, StreamId stream_id, size_type size) | |
Construct by resizing and passing host params. | |
operator bool () const | |
Whether any data is being stored. | |
size_type | size () const |
Number of elements in the state. | |
Ref & | ref () |
Get a reference to the mutable state data. | |
Ref const & | ref () const |
Get a reference to immutable state data. | |
Public Member Functions inherited from celeritas::AuxStateInterface | |
virtual | ~AuxStateInterface () |
Default destructor. | |
Additional Inherited Members | |
Protected Member Functions inherited from celeritas::AuxStateInterface | |
AuxStateInterface ()=default | |
CELER_DEFAULT_COPY_MOVE (AuxStateInterface) | |
Default destructor. | |
Helper class for retrieving templated state data on a single stream.
This class is most easily used with make_aux_state
to create a "collection group"-style state (see Collection: a data portability class) associated with a AuxParamsInterface
subclass.
The state class S
must have a resize
method that's constructable with a templated params data class P
, a stream ID, and a state size.