00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef ThePEG_H
00010 #define ThePEG_H
00011
00019 #ifndef ThePEG_ALTERNATE_CONFIG
00020
00021 #include "ThePEG/Pointer/Ptr.h"
00022 #include "ThePEG/Pointer/PtrTraits.h"
00023 #include "ThePEG/Pointer/RCPtr.h"
00024 #include "ThePEG/Utilities/Rebinder.fh"
00025 #include "ThePEG/Utilities/Interval.fh"
00026 #include "ThePEG/Utilities/ClassDescription.fh"
00027 #include "ThePEG/Interface/InterfaceBase.fh"
00028 #include "ThePEG/Persistency/PersistentOStream.fh"
00029 #include "ThePEG/Persistency/PersistentIStream.fh"
00030 #include "TemplateTools.h"
00031 #include "Complex.h"
00032 #include "Unitsystem.h"
00033 #include "Constants.h"
00034 #include "std.h"
00035
00036
00043 namespace ThePEG {
00044
00045
00046 using namespace ThePEG::Pointer;
00047 using ThePEG::Pointer::Ptr;
00048 using namespace ThePEG::Units;
00049
00054 struct Base: public ReferenceCounted {
00055
00057 virtual ~Base() {}
00058
00065 static void Init() {}
00066
00072 void debug() const;
00073
00078 virtual void debugme() const;
00079
00080 };
00081
00086 typedef Base PersistentBase;
00087
00094 struct TraitsType {};
00095
00099 struct Veto {
00100
00102 Veto();
00103 };
00104
00109 struct Stop {};
00110
00115 template <typename T>
00116 inline typename BinaryOpTraits<T,T>::MulT sqr(const T& x) {
00117 return x*x;
00118 }
00119
00124 template <typename T>
00125 inline T abs(const T & t) {
00126 return t < T()? -t: t;
00127 }
00128
00129
00130
00131
00132 #ifndef ThePEG_NO_DEBUG
00133
00134 #define ThePEG_DEBUG_LEVEL Debug::level
00135
00136 #define ThePEG_DEBUG_ITEM(item) Debug::debugItem(item)
00137 #else
00138
00139 #define ThePEG_DEBUG_LEVEL 0
00140
00141 #define ThePEG_DEBUG_ITEM(item) false
00142 #endif
00143
00144 }
00145
00146 #include "Pointers.h"
00147 #include "Containers.h"
00148
00149 #else
00150
00151 #include ThePEG_ALTERNATIVE_CONFIG
00152
00153 #endif
00154
00155 #endif
00156