Celeritas 0.6.0-rc.2.10+develop.de0a3a05
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
celeritas::IntegrationBase Class Referenceabstract

Common interface for integrating Celeritas into user applications. More...

#include <IntegrationBase.hh>

Inheritance diagram for celeritas::IntegrationBase:
Inheritance graph
[legend]

Public Member Functions

void SetOptions (SetupOptions &&opts)
 Set options before starting the run.
 
void BuildForMaster ()
 Initialize during ActionInitialization on non-worker thread in MT mode.
 
void Build ()
 Initialize during ActionInitialization on a worker thread or serial mode.
 
virtual void BeginOfRunAction (G4Run const *run)=0
 
void EndOfRunAction (G4Run const *run)
 End the run.
 
CoreParams constGetParams ()
 Access Celeritas shared params.
 
CoreStateInterfaceGetState ()
 Access THREAD-LOCAL Celeritas core state data for user diagnostics.
 

Protected Member Functions

 CELER_DEFAULT_COPY_MOVE (IntegrationBase)
 

Detailed Description

Common interface for integrating Celeritas into user applications.

This implements common functionality for the Celeritas integration classes. The GetParams and GetState methods may only be used during a run with Celeritas offloading enabled.

See also
celeritas::UserActionIntegration
celeritas::TrackingManagerIntegration
Note
For developers: this and the integration daughters all share common data in detail::IntegrationSingleton.

Member Function Documentation

◆ BeginOfRunAction()

virtual void celeritas::IntegrationBase::BeginOfRunAction ( G4Run const run)
pure virtual

◆ Build()

void celeritas::IntegrationBase::Build ( )

Initialize during ActionInitialization on a worker thread or serial mode.

We guard against Build being called from BuildForMaster since we might add worker-specific code here.

◆ SetOptions()

void celeritas::IntegrationBase::SetOptions ( SetupOptions &&  opts)

Set options before starting the run.

This captures the input to indicate that options cannot be modified after this point.


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