ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::actor::surface_sequencer< sf_descriptor_t >::state Struct Reference

Buffer and collection options maintained for one propagation. More...

#include <detray/propagator/actors/surface_sequencer.hpp>

Public Types

using sequence_type = vecmem::device_vector<sf_descriptor_t>
 Device vector storing the encountered surface sequence.
using surface_type = sf_descriptor_t
 Surface descriptor type recorded by the actor.

Public Member Functions

 state (sequence_type seq)
 Constructor with the vector of track states.
bool collect_only_material_surfaces () const
void collect_only_material_surfaces (bool material_only)
 Configure whether to collect only material surfaces.
bool overflow () const
sequence_type & sequence ()
const sequence_type & sequence () const
void set_overflow ()
 Flags that the internal buffer has experienced an overflow.

Detailed Description

template<typename sf_descriptor_t>
struct detray::actor::surface_sequencer< sf_descriptor_t >::state

Buffer and collection options maintained for one propagation.

Constructor & Destructor Documentation

◆ state()

template<typename sf_descriptor_t>
detray::actor::surface_sequencer< sf_descriptor_t >::state::state ( sequence_type seq)
explicit

Constructor with the vector of track states.

Parameters
seqbuffer used to store encountered surfaces

Member Function Documentation

◆ collect_only_material_surfaces() [1/2]

template<typename sf_descriptor_t>
bool detray::actor::surface_sequencer< sf_descriptor_t >::state::collect_only_material_surfaces ( ) const
Returns
whether to only collect material surfaces

◆ collect_only_material_surfaces() [2/2]

template<typename sf_descriptor_t>
void detray::actor::surface_sequencer< sf_descriptor_t >::state::collect_only_material_surfaces ( bool material_only)

Configure whether to collect only material surfaces.

Parameters
material_onlytrue to skip sensitive surfaces without material

◆ overflow()

template<typename sf_descriptor_t>
bool detray::actor::surface_sequencer< sf_descriptor_t >::state::overflow ( ) const
Returns
true if the internal buffer has reached its capacity

◆ sequence() [1/2]

template<typename sf_descriptor_t>
sequence_type & detray::actor::surface_sequencer< sf_descriptor_t >::state::sequence ( )
Returns
access to the surface sequence buffer

◆ sequence() [2/2]

template<typename sf_descriptor_t>
const sequence_type & detray::actor::surface_sequencer< sf_descriptor_t >::state::sequence ( ) const
Returns
access to the surface sequence buffer