GENIEGenerator
Loading...
Searching...
No Matches
genie::RunningThreadInfo Class Reference

Keep info on the event generation thread currently on charge. This is used so that event generation modules invoked by the thread can see the "bigger picture" and access the cross section model for the thread, look-up info for modules that run before or are scheduled to run after etc. More...

#include <RunningThreadInfo.h>

Collaboration diagram for genie::RunningThreadInfo:
[legend]

Classes

struct  Cleaner
 clean More...

Public Member Functions

const EventGeneratorIRunningThread (void)
void UpdateRunningThread (const EventGeneratorI *evg)

Static Public Member Functions

static RunningThreadInfoInstance (void)

Private Member Functions

 RunningThreadInfo ()
 RunningThreadInfo (const RunningThreadInfo &info)
virtual ~RunningThreadInfo ()

Private Attributes

const EventGeneratorIfRunningThread
 current thread

Static Private Attributes

static RunningThreadInfofInstance = 0
 self

Friends

struct Cleaner

Detailed Description

Keep info on the event generation thread currently on charge. This is used so that event generation modules invoked by the thread can see the "bigger picture" and access the cross section model for the thread, look-up info for modules that run before or are scheduled to run after etc.

Author
Costas Andreopoulos <c.andreopoulos \at cern.ch> University of Liverpool
Created:\n May 06, 2004
License:\n Copyright (c) 2003-2025, The GENIE Collaboration
For the full text of the license visit http://copyright.genie-mc.org

Definition at line 29 of file RunningThreadInfo.h.

Constructor & Destructor Documentation

◆ RunningThreadInfo() [1/2]

RunningThreadInfo::RunningThreadInfo ( )
private

Definition at line 20 of file RunningThreadInfo.cxx.

21{
22 fInstance = 0;
23}
static RunningThreadInfo * fInstance
self

References fInstance.

Referenced by Instance(), and RunningThreadInfo().

◆ RunningThreadInfo() [2/2]

genie::RunningThreadInfo::RunningThreadInfo ( const RunningThreadInfo & info)
private

References RunningThreadInfo().

◆ ~RunningThreadInfo()

RunningThreadInfo::~RunningThreadInfo ( )
privatevirtual

Definition at line 25 of file RunningThreadInfo.cxx.

26{
27 fInstance = 0;
28}

References fInstance.

Member Function Documentation

◆ Instance()

RunningThreadInfo * RunningThreadInfo::Instance ( void )
static

Definition at line 30 of file RunningThreadInfo.cxx.

References genie::RunningThreadInfo::Cleaner::DummyMethodAndSilentCompiler(), fInstance, and RunningThreadInfo().

Referenced by genie::GEVGDriver::GenerateEvent(), genie::CEvNSEventGenerator::GenerateKinematics(), genie::COHDNuEventGenerator::GenerateKinematics(), genie::COHHadronicSystemGenerator::ProcessEventRecord(), genie::COHKinematicsGenerator::ProcessEventRecord(), genie::COHPrimaryLeptonGenerator::ProcessEventRecord(), genie::DFRKinematicsGenerator::ProcessEventRecord(), genie::DISKinematicsGenerator::ProcessEventRecord(), genie::DMDISKinematicsGenerator::ProcessEventRecord(), genie::DMEKinematicsGenerator::ProcessEventRecord(), genie::DMELEventGenerator::ProcessEventRecord(), genie::DMELKinematicsGenerator::ProcessEventRecord(), genie::HEDISKinematicsGenerator::ProcessEventRecord(), genie::HELeptonKinematicsGenerator::ProcessEventRecord(), genie::IBDKinematicsGenerator::ProcessEventRecord(), genie::MECGenerator::ProcessEventRecord(), genie::NormGenerator::ProcessEventRecord(), genie::NuEKinematicsGenerator::ProcessEventRecord(), genie::QELEventGenerator::ProcessEventRecord(), genie::QELEventGeneratorSM::ProcessEventRecord(), genie::QELEventGeneratorSuSA::ProcessEventRecord(), genie::QELKinematicsGenerator::ProcessEventRecord(), genie::RESKinematicsGenerator::ProcessEventRecord(), genie::SKKinematicsGenerator::ProcessEventRecord(), genie::SPPEventGenerator::ProcessEventRecord(), genie::MECGenerator::SelectEmpiricalKinematics(), genie::RSPPResonanceSelector::SelectResonance(), genie::DMELKinematicsGenerator::SpectralFuncExperimentalCode(), and genie::QELKinematicsGenerator::SpectralFuncExperimentalCode().

◆ RunningThread()

const EventGeneratorI * genie::RunningThreadInfo::RunningThread ( void )
inline

Definition at line 34 of file RunningThreadInfo.h.

35 {
36 return fRunningThread;
37 }
const EventGeneratorI * fRunningThread
current thread

References fRunningThread.

Referenced by genie::CEvNSEventGenerator::GenerateKinematics(), genie::COHDNuEventGenerator::GenerateKinematics(), genie::COHHadronicSystemGenerator::ProcessEventRecord(), genie::COHKinematicsGenerator::ProcessEventRecord(), genie::COHPrimaryLeptonGenerator::ProcessEventRecord(), genie::DFRKinematicsGenerator::ProcessEventRecord(), genie::DISKinematicsGenerator::ProcessEventRecord(), genie::DMDISKinematicsGenerator::ProcessEventRecord(), genie::DMEKinematicsGenerator::ProcessEventRecord(), genie::DMELEventGenerator::ProcessEventRecord(), genie::DMELKinematicsGenerator::ProcessEventRecord(), genie::HEDISKinematicsGenerator::ProcessEventRecord(), genie::HELeptonKinematicsGenerator::ProcessEventRecord(), genie::IBDKinematicsGenerator::ProcessEventRecord(), genie::MECGenerator::ProcessEventRecord(), genie::NormGenerator::ProcessEventRecord(), genie::NuEKinematicsGenerator::ProcessEventRecord(), genie::QELEventGenerator::ProcessEventRecord(), genie::QELEventGeneratorSM::ProcessEventRecord(), genie::QELEventGeneratorSuSA::ProcessEventRecord(), genie::QELKinematicsGenerator::ProcessEventRecord(), genie::RESKinematicsGenerator::ProcessEventRecord(), genie::SKKinematicsGenerator::ProcessEventRecord(), genie::SPPEventGenerator::ProcessEventRecord(), genie::MECGenerator::SelectEmpiricalKinematics(), genie::RSPPResonanceSelector::SelectResonance(), genie::DMELKinematicsGenerator::SpectralFuncExperimentalCode(), and genie::QELKinematicsGenerator::SpectralFuncExperimentalCode().

◆ UpdateRunningThread()

void genie::RunningThreadInfo::UpdateRunningThread ( const EventGeneratorI * evg)
inline

Definition at line 38 of file RunningThreadInfo.h.

39 {
40 fRunningThread = evg;
41 }

References fRunningThread.

Referenced by genie::GEVGDriver::GenerateEvent().

◆ Cleaner

friend struct Cleaner
friend

Definition at line 64 of file RunningThreadInfo.h.

Member Data Documentation

◆ fInstance

RunningThreadInfo * RunningThreadInfo::fInstance = 0
staticprivate

◆ fRunningThread

const EventGeneratorI* genie::RunningThreadInfo::fRunningThread
private

current thread

Definition at line 52 of file RunningThreadInfo.h.

Referenced by RunningThread(), and UpdateRunningThread().


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