|
|
|||
File indexing completed on 2026-08-06 09:38:30
0001 // -*- C++ -*- 0002 // 0003 // Ptr.h is a part of ThePEG - Toolkit for HEP Event Generation 0004 // Copyright (C) 1999-2019 Leif Lonnblad 0005 // 0006 // ThePEG is licenced under version 3 of the GPL, see COPYING for details. 0007 // Please respect the MCnet academic guidelines, see GUIDELINES for details. 0008 // 0009 #ifndef ThePEG_Ptr_H 0010 #define ThePEG_Ptr_H 0011 // This is the declaration of the Ptr class. 0012 0013 #include "RCPtr.fh" 0014 0015 namespace ThePEG { 0016 0017 /** The namespace for the reference counted pointer classes */ 0018 namespace Pointer { 0019 0020 /** 0021 * Ptr is a templated class to provide typedefs for pointers types 0022 * ThePEG should use for a given type. If you want to use ThePEG with 0023 * another kind of (smart) pointers than those provided you have to 0024 * provide an alternative ThePEG.h file which includes an alternative 0025 * Ptr class. It may also be possible to specialize this Ptr class for 0026 * using different pointer classes for different classes. 0027 * 0028 * @see RCPtr 0029 * @see ConstRCPtr 0030 * @see TransientRCPtr 0031 * @see TransientConstRCPtr 0032 * 0033 */ 0034 template <typename T> 0035 struct Ptr { 0036 0037 /** Template argument typedef. */ 0038 typedef RCPtr<T> pointer; 0039 /** Template argument typedef. */ 0040 typedef ConstRCPtr<T> const_pointer; 0041 /** Template argument typedef. */ 0042 typedef TransientRCPtr<T> transient_pointer; 0043 /** Template argument typedef. */ 0044 typedef TransientConstRCPtr<T> transient_const_pointer; 0045 /** Template argument typedef. */ 0046 typedef pointer ptr; 0047 /** Template argument typedef. */ 0048 typedef const_pointer cptr; 0049 /** Template argument typedef. */ 0050 typedef transient_pointer tptr; 0051 /** Template argument typedef. */ 0052 typedef transient_const_pointer tcptr; 0053 /** Template argument typedef. */ 0054 typedef pointer p; 0055 /** Template argument typedef. */ 0056 typedef const_pointer cp; 0057 /** Template argument typedef. */ 0058 typedef transient_pointer tp; 0059 /** Template argument typedef. */ 0060 typedef transient_const_pointer tcp; 0061 0062 }; 0063 0064 } 0065 } 0066 0067 #endif /* ThePEG_Ptr_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|