List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | Private Types | Private Member Functions | Private Attributes
DrumPhotonGeneratorOG::DrumPhotonGenerator Class Reference

Simulates drum photons entering the FD telescope. More...

#include <DrumPhotonGenerator.h>

Inheritance diagram for DrumPhotonGeneratorOG::DrumPhotonGenerator:
Inheritance graph
[legend]

Classes

struct  CalibResult
 

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

 DrumPhotonGenerator ()
 
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 ()
 
fwk::VModule::ResultFlag Run (evt::Event &event)
 Run: invoked once per event. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 
 ~DrumPhotonGenerator ()
 

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 Types

enum  Status { eGeneratePhotons, eCalibrate, eCalibrated }
 

Private Member Functions

bool CalculateCalibrationConstants (evt::Event &event)
 
std::map< int, CalibResultCalibrateTelescope (fevt::Telescope &tel)
 
bool DoDrum (evt::Event &event)
 
void GenerateDrumPhotons (fevt::Telescope &tel)
 
int Index (const int eyeId, const int telId) const
 
 REGISTER_MODULE ("DrumPhotonGeneratorOG", DrumPhotonGenerator)
 

Private Attributes

std::string fDrumDataOutName
 
double fDrumNCos
 
bool fInit
 
unsigned int fMaxBin
 
double fMinAccuracy
 
unsigned int fMinBin
 
int fNDrumPhotons
 
double fPhiMaxDrumPhotons
 
double fPhiMinDrumPhotons
 
utl::RandomEnginefRandomEngine
 
double fRDiaMin
 
Status fStatus
 
double fThetaMaxDrumPhotons
 
double fThetaMinDrumPhotons
 
std::map< int, unsigned int > fTotalGeneratedPhotonsPerTelescope
 

Detailed Description

Simulates drum photons entering the FD telescope.

Author
Ralf Ulrich
Date
Fri Dec 15 11:50:43 CET 2006

Definition at line 54 of file DrumPhotonGenerator.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.

Enumerator
eGeneratePhotons 
eCalibrate 
eCalibrated 

Definition at line 56 of file DrumPhotonGenerator.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

DrumPhotonGenerator::DrumPhotonGenerator ( )

Definition at line 86 of file DrumPhotonGenerator.cc.

DrumPhotonGenerator::~DrumPhotonGenerator ( )

Definition at line 90 of file DrumPhotonGenerator.cc.

Member Function Documentation

bool DrumPhotonGenerator::CalculateCalibrationConstants ( evt::Event event)
private
map< int, DrumPhotonGenerator::CalibResult > DrumPhotonGenerator::CalibrateTelescope ( fevt::Telescope tel)
private
bool DrumPhotonGenerator::DoDrum ( evt::Event event)
private
VModule::ResultFlag DrumPhotonGenerator::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 606 of file DrumPhotonGenerator.cc.

References io::eSuccess.

void DrumPhotonGenerator::GenerateDrumPhotons ( fevt::Telescope tel)
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.

std::string fwk::VModule::GetVersionInfo ( const VersionInfoType  v) const
inherited
int DrumPhotonGeneratorOG::DrumPhotonGenerator::Index ( const int  eyeId,
const int  telId 
) const
inlineprivate

Definition at line 79 of file DrumPhotonGenerator.h.

VModule::ResultFlag DrumPhotonGenerator::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 95 of file DrumPhotonGenerator.cc.

References utl::deg, ERROR, io::eSuccess, utl::Branch::GetChild(), utl::Branch::GetData(), fwk::CentralConfig::GetTopBranch(), INFO, and utl::m.

void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

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

DrumPhotonGeneratorOG::DrumPhotonGenerator::REGISTER_MODULE ( "DrumPhotonGeneratorOG"  ,
DrumPhotonGenerator   
)
private
VModule::ResultFlag DrumPhotonGenerator::Run ( evt::Event event)
virtual
ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited

Member Data Documentation

std::string DrumPhotonGeneratorOG::DrumPhotonGenerator::fDrumDataOutName
private

Definition at line 100 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fDrumNCos
private

Definition at line 92 of file DrumPhotonGenerator.h.

int fwk::VModule::fInfoLevel = 0
protectedinherited
bool DrumPhotonGeneratorOG::DrumPhotonGenerator::fInit
private

Definition at line 105 of file DrumPhotonGenerator.h.

unsigned int DrumPhotonGeneratorOG::DrumPhotonGenerator::fMaxBin
private

Definition at line 98 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fMinAccuracy
private

Definition at line 89 of file DrumPhotonGenerator.h.

unsigned int DrumPhotonGeneratorOG::DrumPhotonGenerator::fMinBin
private

Definition at line 97 of file DrumPhotonGenerator.h.

int DrumPhotonGeneratorOG::DrumPhotonGenerator::fNDrumPhotons
private

Definition at line 90 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fPhiMaxDrumPhotons
private

Definition at line 96 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fPhiMinDrumPhotons
private

Definition at line 95 of file DrumPhotonGenerator.h.

utl::RandomEngine* DrumPhotonGeneratorOG::DrumPhotonGenerator::fRandomEngine
private

Definition at line 102 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fRDiaMin
private

Definition at line 99 of file DrumPhotonGenerator.h.

Status DrumPhotonGeneratorOG::DrumPhotonGenerator::fStatus
private

Definition at line 106 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fThetaMaxDrumPhotons
private

Definition at line 94 of file DrumPhotonGenerator.h.

double DrumPhotonGeneratorOG::DrumPhotonGenerator::fThetaMinDrumPhotons
private

Definition at line 93 of file DrumPhotonGenerator.h.

std::map<int, unsigned int> DrumPhotonGeneratorOG::DrumPhotonGenerator::fTotalGeneratedPhotonsPerTelescope
private

Definition at line 104 of file DrumPhotonGenerator.h.


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

, generated on Tue Sep 26 2023.