herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
SaSPhotonPDF.h
1 // -*- C++ -*-
2 #ifndef Herwig_SaSPhotonPDF_H
3 #define Herwig_SaSPhotonPDF_H
4 //
5 // This is the declaration of the SaSPhotonPDF class.
6 //
7 
8 #include "ThePEG/PDF/PDFBase.h"
9 
10 namespace Herwig {
11 
12 using namespace ThePEG;
13 
20 class SaSPhotonPDF: public PDFBase {
21 
22 public:
23 
27  SaSPhotonPDF() : iset_(2), ip_(0) {}
28 
29 public:
30 
37  virtual bool canHandleParticle(tcPDPtr particle) const;
38 
43  virtual cPDVector partons(tcPDPtr particle) const;
44 
51  virtual double xfl(tcPDPtr particle, tcPDPtr parton, Energy2 partonScale,
52  double l, Energy2 particleScale = 0.0*GeV2) const;
53 
62  virtual double xfvl(tcPDPtr particle, tcPDPtr parton, Energy2 partonScale,
63  double l, Energy2 particleScale = 0.0*GeV2) const;
65 
66 
67 public:
68 
75  void persistentOutput(PersistentOStream & os) const;
76 
82  void persistentInput(PersistentIStream & is, int version);
84 
91  static void Init();
92 
93 protected:
94 
101  virtual IBPtr clone() const;
102 
107  virtual IBPtr fullclone() const;
109 
110 private:
111 
116  SaSPhotonPDF & operator=(const SaSPhotonPDF &) = delete;
117 
118 private:
119 
123  mutable int iset_;
124 
128  mutable int ip_;
129 
130 };
131 
132 }
133 
134 #endif /* Herwig_SaSPhotonPDF_H */
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
The SaSPhotonPDF class provides an interface to the.
Definition: SaSPhotonPDF.h:20
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
vector< cPDPtr > cPDVector
int ip_
Scheme used to evaluate off-shell anomalous component.
Definition: SaSPhotonPDF.h:128
int iset_
PDF Set.
Definition: SaSPhotonPDF.h:123
-*- C++ -*-
SaSPhotonPDF()
The default constructor.
Definition: SaSPhotonPDF.h:27