ThePEG  1.8.0
ClassDocumentation.h
1 // -*- C++ -*-
2 //
3 // ClassDocumentation.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_ClassDocumentation_H
10 #define ThePEG_ClassDocumentation_H
11 // This is the declaration of the ClassDocumentation class.
12 
13 #include "ThePEG/Config/ThePEG.h"
14 #include "ClassDocumentation.fh"
15 
16 namespace ThePEG {
17 
49 
50 protected:
51 
63  ClassDocumentationBase(string newDocumentation,
64  string newModelDescription,
65  string newModelReferences,
66  const type_info & newTypeInfo);
67 
68 public:
69 
74 
75 public:
76 
80  string documentation() const { return theDocumentation; }
81 
85  string modelDescription() const { return theModelDescription; }
86 
90  string modelReferences() const { return theModelReferences; }
91 
92 private:
93 
98 
103 
108 
109 private:
110 
115 
120 
125 
126 };
127 
128 
159 template <typename T>
161 
162 public:
163 
173  ClassDocumentation(string newDocumentation,
174  string newModelDescription = "",
175  string newModelReferences = "")
176  : ClassDocumentationBase(newDocumentation, newModelDescription,
177  newModelReferences, typeid(T)) {}
178 
179 private:
180 
185 
190 
195 
196 };
197 
198 }
199 
200 #endif /* ThePEG_ClassDocumentation_H */