thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
ThePEG::Pointer Namespace Reference

The namespace for the reference counted pointer classes. More...

Classes

class  ConstRCPtr
 ConstRCPtr is a reference counted (smart) const pointer. More...
 
struct  Ptr
 Ptr is a templated class to provide typedefs for pointers types ThePEG should use for a given type. More...
 
struct  PtrTraits
 The PtrTraits class is used everywhere in ThePEG to interface to the pointers which are handled. More...
 
struct  PtrTraits< const T * >
 Specialization of the PtrTraits class for standard bare const pointers. More...
 
struct  PtrTraits< ConstRCPtr< T > >
 Specialization of the PtrTraits class for ConstRCPtr. More...
 
struct  PtrTraits< RCPtr< T > >
 Specialization of the PtrTraits class for RCPtr. More...
 
struct  PtrTraits< T * >
 Specialization of the PtrTraits class for standard bare pointers. More...
 
struct  PtrTraits< TransientConstRCPtr< T > >
 Specialization of the PtrTraits class for TransientConstRCPtr. More...
 
struct  PtrTraits< TransientRCPtr< T > >
 Specialization of the PtrTraits class for TransientRCPtr. More...
 
struct  PtrTraitsType
 PtrTraitsType is an empty non-polymorphic base class for all PtrTraits classes. More...
 
class  RCPtr
 RCPtr is a reference counted (smart) pointer. More...
 
class  RCPtrBase
 RCPtrBase is the base class of RCPtr and ConstRCPtr which are reference counted (smart) pointers. More...
 
class  ReferenceCounted
 ReferenceCounted must be the (virtual) base class of all classes which may be pointed to by the RCPtr smart pointer class. More...
 
class  TransientConstRCPtr
 TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from an RCPtr and ConstRCPtr without problem. More...
 
class  TransientRCPtr
 TransientRCPtr is a simple wrapper around a bare pointer which can be assigned to and from an RCPtr and ConstRCPtr without problem. More...
 

Functions

template<class T1 , class T2 >
T1 dynamic_ptr_cast (const T2 &t2)
 Replacement for the standard dynamic_cast.
 
template<class T1 , class T2 >
T1 const_ptr_cast (const T2 &t2)
 Replacement for the standard const_cast.
 
template<typename Ptr >
Ptr ptr_new ()
 Simple interface to the PtrTraits<Ptr>::create()
 
template<typename Ptr >
Ptr ptr_new (typename PtrTraits< Ptr >::const_reference t)
 Simple interface to the PtrTraits<Ptr>::create()
 
template<typename T >
Ptr< T >::pointer new_ptr ()
 Simple interface to the PtrTraits<Ptr>::create()
 
template<typename T >
Ptr< T >::pointer new_ptr (const T &t)
 Simple interface to the PtrTraits<Ptr>::create()
 
template<typename TPtr , typename T >
TPtr ptr_cast (T *t)
 Simple interface to the PtrTraits<Ptr>::PtrCast()
 
template<typename TPtr , typename T >
TPtr ptr_cast_const (const T *t)
 Simple interface to the PtrTraits<Ptr>::PtrCast()
 

Detailed Description

The namespace for the reference counted pointer classes.

Function Documentation

◆ const_ptr_cast()

template<class T1 , class T2 >
T1 ThePEG::Pointer::const_ptr_cast ( const T2 &  t2)

Replacement for the standard const_cast.

Definition at line 175 of file PtrTraits.h.

◆ dynamic_ptr_cast()

template<class T1 , class T2 >
T1 ThePEG::Pointer::dynamic_ptr_cast ( const T2 &  t2)

Replacement for the standard dynamic_cast.

Definition at line 168 of file PtrTraits.h.

◆ new_ptr() [1/2]

◆ new_ptr() [2/2]

template<typename T >
Ptr< T >::pointer ThePEG::Pointer::new_ptr ( const T &  t)
inline

Simple interface to the PtrTraits<Ptr>::create()

Definition at line 203 of file PtrTraits.h.

◆ ptr_cast()

template<typename TPtr , typename T >
TPtr ThePEG::Pointer::ptr_cast ( T *  t)
inline

Simple interface to the PtrTraits<Ptr>::PtrCast()

Definition at line 211 of file PtrTraits.h.

◆ ptr_cast_const()

template<typename TPtr , typename T >
TPtr ThePEG::Pointer::ptr_cast_const ( const T *  t)
inline

Simple interface to the PtrTraits<Ptr>::PtrCast()

Definition at line 219 of file PtrTraits.h.

◆ ptr_new() [1/2]

template<typename Ptr >
Ptr ThePEG::Pointer::ptr_new ( )
inline

Simple interface to the PtrTraits<Ptr>::create()

Definition at line 181 of file PtrTraits.h.

◆ ptr_new() [2/2]

template<typename Ptr >
Ptr ThePEG::Pointer::ptr_new ( typename PtrTraits< Ptr >::const_reference  t)
inline

Simple interface to the PtrTraits<Ptr>::create()

Definition at line 187 of file PtrTraits.h.