1 #ifndef _TelescopeSimulatorLX_TelescopeSimulator_h_
2 #define _TelescopeSimulatorLX_TelescopeSimulator_h_
6 #include <utl/Photon.h>
8 #include <fwk/VModule.h>
10 #include <fevt/FEvent.h>
31 namespace TelescopeSimulatorLX {
33 class FDsimG4PrimaryGeneratorAction;
34 class FDsimG4EventAction;
35 class FDsimG4Write2ROOT;
52 typedef std::list<std::pair<utl::Photon, int>>
PhotonList;
std::string fG4LensProfile
fwk::VModule::ResultFlag Run(evt::Event &event) override
Run: invoked once per event.
REGISTER_MODULE("TelescopeSimulatorLX", TelescopeSimulator)
boost::filter_iterator< ComponentSelector, AllEyeIterator > EyeIterator
selective Eye iterators
std::string fG4MirrorDataFile
FDsimG4XMLManager fXMLManager
std::vector< FDsimG4StoreOpticalHit > fG4PixelHits
FDsimG4EventAction * fG4EventAction
PhotonList::iterator PhotonListIterator
void FillTraces(const fevt::FEvent::EyeIterator &eIt, const fevt::Eye::TelescopeIterator &tIt)
std::vector< FDsimG4StoreOpticalHit * > fG4Photons
PhotonList::const_iterator PhotonListConstIterator
FDsimG4StoreOpticalHit * GetG4Photon()
boost::filter_iterator< ComponentSelector, AllTelescopeIterator > TelescopeIterator
selective Telescope iterators
FDsimG4Write2ROOT * fWrite2ROOT
FDsimG4PrimaryGeneratorAction * fG4PrimGenAct
void SetG4PixelHit(const FDsimG4StoreOpticalHit &g4PixelHit)
G4UImanager * fG4UImanager
std::string fGeneralConfigSignature
fwk::VModule::ResultFlag Init() override
Initialize: invoked at beginning of run (NOT beginning of event)
Manager for specific FD description parameters in XML file.
ResultFlag
Flag returned by module methods to the RunController.
std::list< std::pair< utl::Photon, int > > PhotonList
fwk::VModule::ResultFlag Finish() override
Finish: invoked at end of the run (NOT end of the event)
G4RunManager * fG4RunManager
Simulates the FD telescope using Geant4.