Celeritas  0.5.0-56+6b053cd
Classes | Public Member Functions | List of all members
celeritas::OpticalCollector Class Reference

Generate and track optical photons. More...

#include <OpticalCollector.hh>

Classes

struct  Input
 

Public Types

Type aliases
using SPConstCerenkov = std::shared_ptr< optical::CerenkovParams const >
 
using SPConstMaterial = std::shared_ptr< optical::MaterialParams const >
 
using SPConstScintillation = std::shared_ptr< optical::ScintillationParams const >
 

Public Member Functions

 OpticalCollector (CoreParams const &, Input &&)
 Construct with core data and optical data. More...
 
AuxId offload_aux_id () const
 Aux ID for optical generator data used for offloading.
 
AuxId optical_aux_id () const
 Aux ID for optical core state data.
 

Detailed Description

Generate and track optical photons.

This class is the interface between the main stepping loop and the photon stepping loop and constructs kernel actions for:

The photon stepping loop will then generate optical primaries.

The "collector" (TODO: rename?) will "own" the optical state data and optical params since it's the only thing that launches the optical stepping loop.

Todo:
Rename to OpticalOffload

Constructor & Destructor Documentation

◆ OpticalCollector()

celeritas::OpticalCollector::OpticalCollector ( CoreParams const &  core,
Input &&  inp 
)

Construct with core data and optical data.

This adds several actions and auxiliary data to the registry.


The documentation for this class was generated from the following files: