thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
PtGenerator.h
1// -*- C++ -*-
2//
3// PtGenerator.h is a part of ThePEG - Toolkit for HEP Event Generation
4// Copyright (C) 1999-2019 Leif Lonnblad
5//
6// ThePEG is licenced under version 3 of the GPL, see COPYING for details.
7// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8//
9#ifndef ThePEG_PtGenerator_H
10#define ThePEG_PtGenerator_H
11// This is the declaration of the PtGenerator class.
12
14#include "ThePEG/Handlers/HandlerBase.h"
15
16namespace ThePEG {
17
29class PtGenerator: public HandlerBase {
30
31public:
32
39 virtual TransverseMomentum generate() const =0;
41
42public:
43
47 static void Init();
48
49private:
50
55
59 PtGenerator & operator=(const PtGenerator &) = delete;
60
61};
62
63
70template <>
73 typedef HandlerBase NthBase;
74};
75
80template <>
81struct ClassTraits<PtGenerator>: public ClassTraitsBase<PtGenerator> {
83 static string className() { return "ThePEG::PtGenerator"; }
84};
85
86
89}
90
91#endif /* ThePEG_PtGenerator_H */
This is the main config header file for ThePEG.
A concreate implementation of ClassDescriptionBase describing an abstract class with persistent data.
HandlerBase is an abstract base class derived from the Interfaced class via the HandlerBaseT class ad...
Definition: HandlerBase.h:151
PtGenerator is the base for all classes implementing alternative models for transverse momentum gener...
Definition: PtGenerator.h:29
virtual TransverseMomentum generate() const =0
Generate ( ) components of the transverse momentum.
PtGenerator & operator=(const PtGenerator &)=delete
Private and non-existent assignment operator.
static void Init()
Standard Init function used to initialize the interface.
static AbstractClassDescription< PtGenerator > initPtGenerator
Describe an abstract class without persistent data.
Definition: PtGenerator.h:54
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
BaseClassTraits describes the base classes of the templated class.
Definition: ClassTraits.h:156
int NthBase
The type of the BaseN'th base class (int means there are no further base classes).
Definition: ClassTraits.h:161
static string className()
Return the name of class T.
Definition: ClassTraits.h:66
ClassTraitsType is an empty, non-polymorphic, base class.
Definition: ClassTraits.h:30