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::DVCSGeneratorService Class Reference

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

#include <DVCSGeneratorService.h>

Inheritance diagram for EPIC::DVCSGeneratorService:
EPIC::GeneratorService< DVCSKinematicRanges, PARTONS::DVCSProcessModule, DVCSKinematicModule, DVCSRCModule > EPIC::EventGeneratorInterface

Public Member Functions

virtual ~DVCSGeneratorService ()
 
virtual double getEventDistribution (std::vector< double > &kin) const
 
virtual void run ()
 
- Public Member Functions inherited from EPIC::GeneratorService< DVCSKinematicRanges, PARTONS::DVCSProcessModule, DVCSKinematicModule, DVCSRCModule >
 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 DVCSKinematicRangesgetKinematicRanges () const
 
void setKinematicRanges (const DVCSKinematicRanges &kinematicRanges)
 
const ExperimentalConditionsgetExperimentalConditions () const
 
void setExperimentalConditions (const ExperimentalConditions &experimentalConditions)
 
PARTONS::DVCSProcessModule * getProcessModule () const
 
void setProcessModule (PARTONS::DVCSProcessModule *processModule)
 
const std::shared_ptr< EventGeneratorModule > & getEventGeneratorModule () const
 
void setEventGeneratorModule (const std::shared_ptr< EventGeneratorModule > &pEventGeneratorModule)
 
const std::shared_ptr< DVCSKinematicModule > & getKinematicModule () const
 
void setKinematicModule (const std::shared_ptr< DVCSKinematicModule > &pKinematicModule)
 
const std::shared_ptr< DVCSRCModule > & getRCModule () const
 
void setRCModule (const std::shared_ptr< DVCSRCModule > &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 DVCS_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< DVCSKinematicRanges, PARTONS::DVCSProcessModule, DVCSKinematicModule, DVCSRCModule >
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< DVCSKinematicRanges, PARTONS::DVCSProcessModule, DVCSKinematicModule, DVCSRCModule >
DVCSKinematicRanges m_kinematicRanges
 Kinematic ranges.
 
PARTONS::DVCSProcessModule * m_pProcessModule
 Process module.
 
std::shared_ptr< DVCSKinematicModulem_pKinematicModule
 Kinematic module.
 
std::shared_ptr< DVCSRCModulem_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 DVCS MC events.

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

Constructor & Destructor Documentation

◆ ~DVCSGeneratorService()

virtual EPIC::DVCSGeneratorService::~DVCSGeneratorService ( )
virtual

Destructor.

Member Function Documentation

◆ getEventDistribution()

virtual double EPIC::DVCSGeneratorService::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::DVCSGeneratorService::run ( )
virtual

Member Data Documentation

◆ classId

const unsigned int EPIC::DVCSGeneratorService::classId
static

Unique ID to automatically register the class in the registry.


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