Celeritas 0.7.0-dev.251+develop.9b9328e4
Loading...
Searching...
No Matches
Public Member Functions | List of all members
celeritas::LocalOffloadInterface Class Referenceabstract

Abstract base class for offloading tracks to Celeritas. More...

#include <LocalOffloadInterface.hh>

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

Public Types

Type aliases
using MapStrDbl = std::unordered_map< std::string, double >
 

Public Member Functions

virtual void Initialize (SetupOptions const &, SharedParams &)=0
 
virtual void InitializeEvent (int)=0
 
virtual void Flush ()=0
 
virtual void Finalize ()=0
 
virtual bool Initialized () const =0
 
virtual size_type GetBufferSize () const =0
 
virtual MapStrDbl GetActionTime () const =0
 
 operator bool () const
 Whether the class instance is initialized.
 

Protected Member Functions

 LocalOffloadInterface (LocalOffloadInterface const &)=default
 
LocalOffloadInterfaceoperator= (LocalOffloadInterface const &)=default
 
 LocalOffloadInterface (LocalOffloadInterface &&)=default
 
LocalOffloadInterfaceoperator= (LocalOffloadInterface &&)=default
 

Detailed Description

Abstract base class for offloading tracks to Celeritas.

This class must be constructed locally on each worker thread/task/stream,

Warning
Due to Geant4 thread-local allocators, this class must be finalized or destroyed on the same CPU thread in which is created and used!

Constructor & Destructor Documentation

◆ LocalOffloadInterface() [1/3]

celeritas::LocalOffloadInterface::LocalOffloadInterface ( )
protecteddefault

Allow construction and assignment only through daughter classes

◆ LocalOffloadInterface() [2/3]

celeritas::LocalOffloadInterface::LocalOffloadInterface ( LocalOffloadInterface const )
protecteddefault

Allow construction and assignment only through daughter classes

◆ LocalOffloadInterface() [3/3]

celeritas::LocalOffloadInterface::LocalOffloadInterface ( LocalOffloadInterface &&  )
protecteddefault

Allow construction and assignment only through daughter classes

Member Function Documentation

◆ Finalize()

virtual void celeritas::LocalOffloadInterface::Finalize ( )
pure virtual

◆ Flush()

virtual void celeritas::LocalOffloadInterface::Flush ( )
pure virtual

◆ GetActionTime()

virtual MapStrDbl celeritas::LocalOffloadInterface::GetActionTime ( ) const
pure virtual

◆ GetBufferSize()

virtual size_type celeritas::LocalOffloadInterface::GetBufferSize ( ) const
pure virtual

◆ Initialize()

virtual void celeritas::LocalOffloadInterface::Initialize ( SetupOptions const ,
SharedParams  
)
pure virtual

◆ Initialized()

virtual bool celeritas::LocalOffloadInterface::Initialized ( ) const
pure virtual

◆ InitializeEvent()

virtual void celeritas::LocalOffloadInterface::InitializeEvent ( int  )
pure virtual

◆ operator=() [1/2]

LocalOffloadInterface & celeritas::LocalOffloadInterface::operator= ( LocalOffloadInterface &&  )
protecteddefault

Allow construction and assignment only through daughter classes

◆ operator=() [2/2]

LocalOffloadInterface & celeritas::LocalOffloadInterface::operator= ( LocalOffloadInterface const )
protecteddefault

Allow construction and assignment only through daughter classes


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