List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | Private Member Functions | Private Attributes
TabulatedTankSimulatorNS::TabulatedTankSimulator Class Reference

Module to simulate tank response based on lookup tables. More...

#include <TabulatedTankSimulator.h>

Inheritance diagram for TabulatedTankSimulatorNS::TabulatedTankSimulator:
Inheritance graph
[legend]

Public Types

enum  ResultFlag { eSuccess, eFailure, eBreakLoop, eContinueLoop }
 Flag returned by module methods to the RunController. More...
 
enum  VersionInfoType {
  eFilename = 1, eRevisionNumber = 2, eDate = 3, eTime = 4,
  eLastEditor = 5
}
 Different types of version info that can be retrieved from GetVersionInfo. More...
 

Public Member Functions

fwk::VModule::ResultFlag Finish ()
 Finish: invoked at end of the run (NOT end of the event) More...
 
utl::StopwatchGetStopwatch ()
 
const utl::StopwatchGetStopwatch () const
 
std::string GetVersionInfo (const VersionInfoType v) const
 Retrieve different sorts of module version info. More...
 
fwk::VModule::ResultFlag Init ()
 Initialize: invoked at beginning of run (NOT beginning of event) More...
 
void InitTiming ()
 
int PDGToCDF (const int pid)
 
fwk::VModule::ResultFlag Run (evt::Event &event)
 Run: invoked once per event. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 
 TabulatedTankSimulator ()
 
virtual ~TabulatedTankSimulator ()
 

Static Public Member Functions

static std::string GetResultFlagByName (const ResultFlag flag)
 

Protected Types

enum  InfoLevel { eInfoNone = 0, eInfoFinal = 1, eInfoIntermediate = 2, eInfoDebug = 3 }
 

Protected Attributes

int fInfoLevel = 0
 

Private Member Functions

void AddPhoton (const utl::Particle &particle, sevt::PMTSimData &pmtSim, const double peTime) const
 
sevt::StationConstants::SignalComponent GetComponentId (const utl::Particle &curParticle)
 
double GetTimePE ()
 
 REGISTER_MODULE ("TabulatedTankSimulatorKG", TabulatedTankSimulator)
 
void SimulateStation (sevt::Station &station)
 

Private Attributes

utl::RandomEngine::RandomEngineTypefRandomEngine = nullptr
 
SignalSeparationMode fSignalSeparationMode = eStandard
 
DetectorResponsefTankResponse = nullptr
 
double fTauMuon = 0
 

Detailed Description

Module to simulate tank response based on lookup tables.

Author
Maximo Ave
Javier Gonzalez
Detlef Maurel (update)
Date
09 Mar 2014

Definition at line 33 of file TabulatedTankSimulator.h.

Member Enumeration Documentation

enum fwk::VModule::InfoLevel
protectedinherited
Enumerator
eInfoNone 
eInfoFinal 
eInfoIntermediate 
eInfoDebug 

Definition at line 125 of file VModule.h.

enum fwk::VModule::ResultFlag
inherited

Flag returned by module methods to the RunController.

Enumerator
eSuccess 

Report success to RunController.

eFailure 

Report failure to RunController, causing RunController to terminate execution.

eBreakLoop 

Break current loop. It works for nested loops too!

eContinueLoop 

Skip remaining modules in the current loop and continue with next iteration of the loop.

Definition at line 60 of file VModule.h.

Different types of version info that can be retrieved from GetVersionInfo.

Enumerator
eFilename 
eRevisionNumber 
eDate 
eTime 
eLastEditor 

Definition at line 110 of file VModule.h.

Constructor & Destructor Documentation

TabulatedTankSimulator::TabulatedTankSimulator ( )

Definition at line 39 of file TabulatedTankSimulator.cc.

TabulatedTankSimulator::~TabulatedTankSimulator ( )
virtual

Definition at line 44 of file TabulatedTankSimulator.cc.

References fTankResponse.

Member Function Documentation

void TabulatedTankSimulator::AddPhoton ( const utl::Particle particle,
sevt::PMTSimData pmtSim,
const double  peTime 
) const
private
VModule::ResultFlag TabulatedTankSimulator::Finish ( )
virtual

Finish: invoked at end of the run (NOT end of the event)

This method is for things that should be done at the end of the run (for example, closing files or writing out histograms) {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 93 of file TabulatedTankSimulator.cc.

References fwk::VModule::eSuccess, and INFO.

sevt::StationConstants::SignalComponent TabulatedTankSimulatorNS::TabulatedTankSimulator::GetComponentId ( const utl::Particle curParticle)
private
std::string fwk::VModule::GetResultFlagByName ( const ResultFlag  flag)
staticinherited
utl::Stopwatch& fwk::VModule::GetStopwatch ( )
inlineinherited

Definition at line 106 of file VModule.h.

References fwk::VModule::fStopwatch.

const utl::Stopwatch& fwk::VModule::GetStopwatch ( ) const
inlineinherited

Definition at line 107 of file VModule.h.

References fwk::VModule::fStopwatch.

double TabulatedTankSimulator::GetTimePE ( )
private
std::string fwk::VModule::GetVersionInfo ( const VersionInfoType  v) const
inherited
VModule::ResultFlag TabulatedTankSimulator::Init ( )
virtual

Initialize: invoked at beginning of run (NOT beginning of event)

This method is for things that should be done once at the beginning of a run (for example, booking histograms, performing calculations that need to be done only once, initializing parameters) {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 51 of file TabulatedTankSimulator.cc.

References TabulatedTankSimulatorNS::eStandard, fwk::VModule::eSuccess, TabulatedTankSimulatorNS::eUniversality, fRandomEngine, fSignalSeparationMode, fTankResponse, utl::Branch::GetChild(), utl::Branch::GetData(), and utl::Branch::GetTopBranch().

void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().

int TabulatedTankSimulator::PDGToCDF ( const int  pid)
TabulatedTankSimulatorNS::TabulatedTankSimulator::REGISTER_MODULE ( "TabulatedTankSimulatorKG"  ,
TabulatedTankSimulator   
)
private
VModule::ResultFlag TabulatedTankSimulator::Run ( evt::Event event)
virtual

Run: invoked once per event.

This method is for things that should be done once per event {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 79 of file TabulatedTankSimulator.cc.

References fwk::VModule::eSuccess, INFO, SimulateStation(), sevt::SEvent::StationsBegin(), and sevt::SEvent::StationsEnd().

ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited
void TabulatedTankSimulator::SimulateStation ( sevt::Station station)
private

Member Data Documentation

int fwk::VModule::fInfoLevel = 0
protectedinherited
utl::RandomEngine::RandomEngineType* TabulatedTankSimulatorNS::TabulatedTankSimulator::fRandomEngine = nullptr
private

Definition at line 55 of file TabulatedTankSimulator.h.

Referenced by GetTimePE(), Init(), and SimulateStation().

SignalSeparationMode TabulatedTankSimulatorNS::TabulatedTankSimulator::fSignalSeparationMode = eStandard
private

Definition at line 54 of file TabulatedTankSimulator.h.

Referenced by AddPhoton(), and Init().

DetectorResponse* TabulatedTankSimulatorNS::TabulatedTankSimulator::fTankResponse = nullptr
private

Definition at line 52 of file TabulatedTankSimulator.h.

Referenced by Init(), SimulateStation(), and ~TabulatedTankSimulator().

double TabulatedTankSimulatorNS::TabulatedTankSimulator::fTauMuon = 0
private

Definition at line 53 of file TabulatedTankSimulator.h.

Referenced by SimulateStation().


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

, generated on Tue Sep 26 2023.