cepgen is hosted by Hepforge, IPPP Durham
CepGen N/A
Central exclusive processes event generator

Class template to interface (external/internal) events modification algorithms. More...

#include <include/CepGen/EventFilter/EventModifier.h>

+ Inheritance diagram for EventModifier:
+ Collaboration diagram for EventModifier:

Public Member Functions

 EventModifier (const ParametersList &)
 Default constructor for an undefined modifier.
 
void setSeed (long long seed)
 Specify a random numbers generator seed for the external module.
 
virtual void readString (const std::string &)
 Parse a configuration string.
 
virtual void readStrings (const std::vector< std::string > &)
 Parse a list of configuration strings.
 
virtual bool run (Event &ev, double &weight, bool fast=false)=0
 Modify an event.
 
virtual void setCrossSection (const Value &)
 Specify the cross-section value, in pb.
 
void initialise (const RunParameters &)
 Initialise the handler and its inner parameterisation.
 
const RunParametersrunParameters () const
 List of run parameters.
 
template<typename T >
T * engine ()
 Retrieve the engine object.
 
const std::string & name () const
 Module unique indexing name.
 
bool operator== (const SteeredObject &oth) const
 Equality operator.
 
bool operator!= (const SteeredObject &oth) const
 Inequality operator.
 
const ParametersListparameters () const override
 Module user-defined parameters.
 
void setParameters (const ParametersList &params) override
 Set module parameters.
 
void setDescribedParameters (const ParametersList &params_orig)
 Set (documented) module parameters.
 

Static Public Member Functions

static ParametersDescription description ()
 

Protected Member Functions

virtual void initialise ()
 
virtual void * enginePtr ()
 Engine object.
 
template<typename T >
steer (const std::string &key) const
 Retrieve a parameters as previously steered.
 
template<typename T , typename U >
U steerAs (const std::string &key) const
 Retrieve a recast parameters as previously steered.
 
std::string steerName () const
 Retrieve module name from parameters.
 
std::string steerPath (const std::string &key) const
 Retrieve a path from common search paths.
 

Protected Attributes

long long seed_ {0ll}
 Random numbers generator seed fed to the algorithm.
 
unsigned short max_trials_ {1}
 Maximal trials for the algorithm.
 
const std::string name_
 Module unique indexing name.
 
ParametersList params_
 Module parameters.
 

Detailed Description

Author
Laurent Forthomme laure.nosp@m.nt.f.nosp@m.ortho.nosp@m.mme@.nosp@m.cern..nosp@m.ch
Date
July 2019

Definition at line 29 of file EventModifier.h.

Constructor & Destructor Documentation

◆ EventModifier()

EventModifier ( const ParametersList & )
explicit

Member Function Documentation

◆ description()

static ParametersDescription description ( )
static

◆ engine()

template<typename T >
T * engine ( )
inherited

Definition at line 42 of file EventHandler.h.

◆ enginePtr()

virtual void * enginePtr ( )
protectedvirtualinherited

◆ initialise() [1/2]

virtual void initialise ( )
protectedvirtualinherited

Definition at line 47 of file EventHandler.h.

◆ initialise() [2/2]

void initialise ( const RunParameters & )
inherited

◆ name()

const std::string & name ( ) const
inherited

Definition at line 42 of file NamedModule.h.

◆ operator!=()

template<typename T >
bool operator!= ( const SteeredObject< T > & oth) const
inherited

Definition at line 50 of file SteeredObject.h.

◆ operator==()

template<typename T >
bool operator== ( const SteeredObject< T > & oth) const
inherited

Definition at line 48 of file SteeredObject.h.

◆ parameters()

template<typename T >
const ParametersList & parameters ( ) const
overridevirtualinherited

Reimplemented from Steerable.

Definition at line 53 of file SteeredObject.h.

◆ readString()

virtual void readString ( const std::string & )
virtual

Definition at line 39 of file EventModifier.h.

◆ readStrings()

virtual void readStrings ( const std::vector< std::string > & )
virtual

◆ run()

virtual bool run ( Event & ev,
double & weight,
bool fast = false )
pure virtual
Parameters
[in,out]evInput/output event
[in,out]weightEvent weight after modification
[in]fastRun a faster version of the algorithm (whenever available)
Returns
Boolean stating whether the modification occurred successfully

◆ runParameters()

const RunParameters & runParameters ( ) const
inherited

◆ setCrossSection()

virtual void setCrossSection ( const Value & )
virtual

Definition at line 48 of file EventModifier.h.

◆ setDescribedParameters()

template<typename T >
void setDescribedParameters ( const ParametersList & params_orig)
inherited

Definition at line 72 of file SteeredObject.h.

◆ setParameters()

template<typename T >
void setParameters ( const ParametersList & )
overridevirtualinherited

Reimplemented from Steerable.

Definition at line 61 of file SteeredObject.h.

◆ setSeed()

void setSeed ( long long seed)
Parameters
[in]seedAn RNG seed

Definition at line 37 of file EventModifier.h.

◆ steer()

template<typename T >
T steer ( const std::string & key) const
protectedinherited

Definition at line 39 of file Steerable.h.

◆ steerAs()

template<typename T , typename U >
U steerAs ( const std::string & key) const
protectedinherited

Definition at line 44 of file Steerable.h.

◆ steerName()

std::string steerName ( ) const
protectedinherited

Definition at line 48 of file Steerable.h.

◆ steerPath()

std::string steerPath ( const std::string & key) const
protectedinherited

Member Data Documentation

◆ max_trials_

unsigned short max_trials_ {1}
protected

Definition at line 52 of file EventModifier.h.

◆ name_

const std::string name_
protectedinherited

Definition at line 45 of file NamedModule.h.

◆ params_

ParametersList params_
mutableprotectedinherited

Definition at line 50 of file Steerable.h.

◆ seed_

long long seed_ {0ll}
protected

Definition at line 51 of file EventModifier.h.