00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef THEPEG_ReweightConstant_H
00010 #define THEPEG_ReweightConstant_H
00011
00012
00013
00014
00015 #include "ThePEG/MatrixElement/ReweightBase.h"
00016
00017 namespace ThePEG {
00018
00026 class ReweightConstant: public ReweightBase {
00027
00028 public:
00029
00035 ReweightConstant() : C(1.0) {}
00037
00038 public:
00039
00044 virtual double weight() const;
00045
00046 public:
00047
00054 void persistentOutput(PersistentOStream & os) const;
00055
00061 void persistentInput(PersistentIStream & is, int version);
00063
00070 static void Init();
00071
00072 protected:
00073
00080 virtual IBPtr clone() const;
00081
00086 virtual IBPtr fullclone() const;
00088
00089 private:
00090
00094 double C;
00095
00096 private:
00097
00102 static ClassDescription<ReweightConstant> initReweightConstant;
00103
00108 ReweightConstant & operator=(const ReweightConstant &);
00109
00110 };
00111
00112 }
00113
00114 #include "ThePEG/Utilities/ClassTraits.h"
00115
00116 namespace ThePEG {
00117
00122 template <>
00123 struct BaseClassTrait<ReweightConstant,1> {
00125 typedef ReweightBase NthBase;
00126 };
00127
00130 template <>
00131 struct ClassTraits<ReweightConstant>
00132 : public ClassTraitsBase<ReweightConstant> {
00134 static string className() { return "ThePEG::ReweightConstant"; }
00138 static string library() { return "ReweightConstant.so"; }
00139 };
00140
00143 }
00144
00145 #endif