EpIC 1.1.0
Monte Carlo generator for exclusive processes
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
EPIC::TCSGeneratorService Class Reference

Service used to perform generation of TCS MC events. More...

#include <TCSGeneratorService.h>

Inheritance diagram for EPIC::TCSGeneratorService:
EPIC::GeneratorService< TCSKinematicRanges, PARTONS::TCSProcessModule, TCSKinematicModule, TCSRCModule > EPIC::EventGeneratorInterface

Public Member Functions

virtual ~TCSGeneratorService ()
 
virtual double getEventDistribution (std::vector< double > &kin) const
 
virtual void run ()
 
- Public Member Functions inherited from EPIC::GeneratorService< TCSKinematicRanges, PARTONS::TCSProcessModule, TCSKinematicModule, TCSRCModule >
 GeneratorService (const std::string &className)
 
 GeneratorService (const GeneratorService &other)
 
virtual GeneratorServiceclone () const=0
 
virtual ~GeneratorService ()
 
void computeTask (const MonteCarloTask &task)
 
virtual void run ()=0
 
void printAndSaveGenerationConfiguration ()
 
virtual void addAdditionalGenerationConfiguration (GenerationInformation &generationInformation)
 
const GeneralConfigurationgetGeneralConfiguration () const
 
void setGeneralConfiguration (const GeneralConfiguration &generalConfiguration)
 
const TCSKinematicRangesgetKinematicRanges () const
 
void setKinematicRanges (const TCSKinematicRanges &kinematicRanges)
 
const ExperimentalConditionsgetExperimentalConditions () const
 
void setExperimentalConditions (const ExperimentalConditions &experimentalConditions)
 
PARTONS::TCSProcessModule * getProcessModule () const
 
void setProcessModule (PARTONS::TCSProcessModule *processModule)
 
const std::shared_ptr< EventGeneratorModule > & getEventGeneratorModule () const
 
void setEventGeneratorModule (const std::shared_ptr< EventGeneratorModule > &pEventGeneratorModule)
 
const std::shared_ptr< TCSKinematicModule > & getKinematicModule () const
 
void setKinematicModule (const std::shared_ptr< TCSKinematicModule > &pKinematicModule)
 
const std::shared_ptr< TCSRCModule > & getRCModule () const
 
void setRCModule (const std::shared_ptr< TCSRCModule > &pRCModule)
 
const std::shared_ptr< WriterModule > & getWriterModule () const
 
void setWriterModule (const std::shared_ptr< WriterModule > &pWriterModule)
 
const std::string & getScenarioDescription () const
 
void setScenarioDescription (const std::string &scenarioDescription)
 
const std::string & getScenarioDate () const
 
void setScenarioDate (const std::string &scenarioDate)
 
- Public Member Functions inherited from EPIC::EventGeneratorInterface
 EventGeneratorInterface ()
 
 EventGeneratorInterface (const EventGeneratorInterface &other)
 
virtual ~EventGeneratorInterface ()
 
virtual double getEventDistribution (std::vector< double > &kin) const =0
 

Static Public Attributes

static const std::string TCS_GENERATOR_SERVICE_SUBPROCESSTYPE
 String used to set subprocess type via XML scenario.
 
static const unsigned int classId
 

Additional Inherited Members

- Protected Member Functions inherited from EPIC::GeneratorService< TCSKinematicRanges, PARTONS::TCSProcessModule, TCSKinematicModule, TCSRCModule >
void getGeneralConfigurationFromTask (const MonteCarloTask &task)
 
virtual void getAdditionalGeneralConfigurationFromTask (const MonteCarloTask &task)=0
 
void getExperimentalConditionsFromTask (const MonteCarloTask &task)
 
virtual void getKinematicRangesFromTask (const MonteCarloTask &task)=0
 
virtual void getProcessModuleFromTask (const MonteCarloTask &task)=0
 
void getEventGeneratorModuleFromTask (const MonteCarloTask &task)
 
virtual void getKinematicModuleFromTask (const MonteCarloTask &task)=0
 
virtual void getRCModuleFromTask (const MonteCarloTask &task)=0
 
void getWriterModuleFromTask (const MonteCarloTask &task)
 
virtual void isServiceWellConfigured () const
 
std::string getCurrentDate () const
 
void checkTargetPolarisation (ExperimentalConditions &experimentalConditions) const
 
virtual void transformVariables (std::vector< double > &variables) const=0
 
virtual void transformRanges (std::vector< KinematicRange > &ranges) const=0
 
virtual double getJacobian (const std::vector< double > &variables) const=0
 
void openHistogramFile ()
 
virtual void bookHistograms ()
 
void closeHistogramFile ()
 
- Protected Attributes inherited from EPIC::GeneratorService< TCSKinematicRanges, PARTONS::TCSProcessModule, TCSKinematicModule, TCSRCModule >
TCSKinematicRanges m_kinematicRanges
 Kinematic ranges.
 
PARTONS::TCSProcessModule * m_pProcessModule
 Process module.
 
std::shared_ptr< TCSKinematicModulem_pKinematicModule
 Kinematic module.
 
std::shared_ptr< TCSRCModulem_pRCModule
 Radiative correction module.
 
GeneralConfiguration m_generalConfiguration
 General configuration.
 
ExperimentalConditions m_experimentalConditions
 Experimental conditions.
 
std::shared_ptr< EventGeneratorModulem_pEventGeneratorModule
 Event generator module.
 
std::shared_ptr< WriterModulem_pWriterModule
 Writer module.
 
std::string m_scenarioDate
 Scenario date.
 
std::string m_scenarioDescription
 Scenario description.
 
std::pair< std::chrono::steady_clock::time_point, std::chrono::steady_clock::time_point > m_debugTimeInitialization
 Timer spent for initialization.
 
std::pair< std::chrono::steady_clock::time_point, std::chrono::steady_clock::time_point > m_debugTimeGeneration
 Timer spent for generation.
 
std::shared_ptr< RandomNumberModulem_randomNumberModule
 Random number module.
 
TFile * m_histogramFile
 File containing histograms.
 
std::vector< TH1 * > m_histograms
 

Detailed Description

Service used to perform generation of TCS MC events.

This class handles generation process of MC events for TCS. It is intended to have a unique instance accessed trough TCSGeneratorService::getInstance() method.

Constructor & Destructor Documentation

◆ ~TCSGeneratorService()

virtual EPIC::TCSGeneratorService::~TCSGeneratorService ( )
virtual

Destructor.

Member Function Documentation

◆ getEventDistribution()

virtual double EPIC::TCSGeneratorService::getEventDistribution ( std::vector< double > &  kin) const
virtual

This function is used by EventGeneratorModule to probe event distribution during the initialization step.

Implements EPIC::EventGeneratorInterface.

◆ run()

virtual void EPIC::TCSGeneratorService::run ( )
virtual

Member Data Documentation

◆ classId

const unsigned int EPIC::TCSGeneratorService::classId
static

Unique ID to automatically register the class in the registry.


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