ThePEG  1.8.0
Pointers.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Pointers.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_Pointers_H
10 #define ThePEG_Pointers_H
11 
31 #include "ThePEG/Config/ThePEG.h"
32 
33 namespace ThePEG {
34 
36 #define ThePEG_DECLARE_TEMPLATE_POINTERS(full, abbrev) \
37  \
38  typedef typename ThePEG::Ptr<full>::pointer abbrev; \
39  \
40  typedef typename ThePEG::Ptr<full>::const_pointer c ## abbrev; \
41  \
42  typedef typename ThePEG::Ptr<full>::transient_pointer t ## abbrev; \
43  \
44  typedef typename ThePEG::Ptr<full>::transient_const_pointer tc ## abbrev
45 
47 #define ThePEG_DECLARE_POINTERS(full, abbrev) \
48  \
49  typedef ThePEG::Ptr<full>::pointer abbrev; \
50  \
51  typedef ThePEG::Ptr<full>::const_pointer c ## abbrev; \
52  \
53  typedef ThePEG::Ptr<full>::transient_pointer t ## abbrev; \
54  \
55  typedef ThePEG::Ptr<full>::transient_const_pointer tc ## abbrev
56 
58 #define ThePEG_DECLARE_CLASS_POINTERS(full, abbrev) \
59  class full; \
60  ThePEG_DECLARE_POINTERS(full, abbrev)
61 
98 
99 // ThePEG_DECLARE_CLASS_POINTERS(,);
100 
101 }
102 
103 // #include "Pointers.icc"
104 #ifndef ThePEG_TEMPLATES_IN_CC_FILE
105 // #include "Pointers.tcc"
106 #endif
107 
108 #endif /* ThePEG_Pointers_H */