00001
00002 #ifndef PYTHIA7_StringRegion_H
00003 #define PYTHIA7_StringRegion_H
00004
00005
00006 #include "FragConfig.h"
00007 #include "String.h"
00008 #include "Oriented.h"
00009
00010
00011 namespace Pythia7 {
00012
00031 class StringRegion {
00032
00033 public:
00034
00040 inline StringRegion();
00041
00046 inline StringRegion(int j, int k, StringPtr str);
00047
00051 inline ~StringRegion();
00053
00058 inline const LorentzVector<double> & ex() const;
00059
00064 inline const LorentzVector<double> & ey() const;
00065
00069 inline const LorentzMomentum & Pfwd() const;
00070
00074 inline const LorentzMomentum & Pbwd() const;
00075
00079 inline Energy2 remW2() const;
00080
00084 inline Energy2 W2() const;
00085
00090 inline double Xremf() const;
00091
00096 inline double Xremb() const;
00097
00101 inline int Ifwd() const;
00102
00106 inline int Ibwd() const;
00107
00111 inline int j() const;
00112
00116 inline int k() const;
00117
00121 inline bool aPrimaryStringRegion() const;
00122
00123
00127 inline StringPtr getTheStringPtr() const;
00128
00132 inline void setXrem(double , double ) const;
00133
00137 void echo() const;
00138
00139 private:
00140
00144 void init();
00145
00149 inline const LorentzMomentum& Pplus() const;
00150
00154 inline const LorentzMomentum& Pminus() const;
00155
00156 private:
00157
00161 int jj;
00162
00166 int kk;
00167
00171 StringPtr theString;
00172
00176 LorentzVector<double> Ex;
00177
00181 LorentzVector<double> Ey;
00182
00186 Energy2 w2;
00187
00188 };
00189
00190 }
00191
00192 #include "StringRegion.icc"
00193 #ifndef PYTHIA7_TEMPLATES_IN_CC_FILE
00194
00195 #endif
00196
00197 #endif