ThePEG  1.8.0
FixedCMSLuminosity.h
1 // -*- C++ -*-
2 //
3 // FixedCMSLuminosity.h is a part of ThePEG - Toolkit for HEP Event Generation
4 // Copyright (C) 1999-2011 Leif Lonnblad
5 //
6 // ThePEG is licenced under version 2 of the GPL, see COPYING for details.
7 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
8 //
9 #ifndef ThePEG_FixedCMSLuminosity_H
10 #define ThePEG_FixedCMSLuminosity_H
11 // This is the declaration of the FixedCMSLuminosity class.
12 
13 #include "LuminosityFunction.h"
14 
15 namespace ThePEG {
16 
34 
35 public:
36 
42  virtual ~FixedCMSLuminosity();
44 
45 public:
46 
50  Energy energy() const { return maximumCMEnergy(); }
51 
52 public:
53 
57  static void Init();
58 
59 protected:
60 
67  virtual IBPtr clone() const;
68 
73  virtual IBPtr fullclone() const;
75 
76 private:
77 
81  void setEnergy(Energy);
82 
86  Energy getEnergy() const;
87 
88 private:
89 
94 
99 
100 };
101 
108 template <>
111  typedef LuminosityFunction NthBase;
112 };
113 
118 template <>
119 struct ClassTraits<FixedCMSLuminosity>:
120  public ClassTraitsBase<FixedCMSLuminosity> {
122  static string className() { return "ThePEG::FixedCMSLuminosity"; }
126  static string library() { return "FixedCMSLuminosity.so"; }
127 };
128 
131 }
132 
133 #endif /* ThePEG_FixedCMSLuminosity_H */