Smart pointer implementation. More...
 Include dependency graph for ptr.h:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | ns3::CallbackTraits< T > | 
| Trait class to convert a pointer into a reference, used by MemPtrCallBackImpl.  More... | |
| struct | ns3::CallbackTraits< Ptr< T > > | 
| Trait class to convert a pointer into a reference, used by MemPtrCallBackImpl.  More... | |
| struct | ns3::EventMemberImplObjTraits< T > | 
| Helper for the MakeEvent functions which take a class method.  More... | |
| struct | ns3::EventMemberImplObjTraits< Ptr< T > > | 
| Helper for the MakeEvent functions which take a class method.  More... | |
| class | ns3::Ptr< T > | 
Smart pointer class similar to boost::intrusive_ptr.  More... | |
| class | ns3::Ptr< T >::Tester | 
| Helper to test for null pointer.  More... | |
Namespaces | |
| ns3 | |
| Every class exported by the ns3 library is enclosed in the ns3 namespace.  | |
Functions | |
| template<typename T1 , typename T2 > | |
| Ptr< T1 > | ns3::const_pointer_cast (Ptr< T2 > const &p) | 
Return a copy of p with its stored pointer const casted from T2 to T1.  More... | |
| template<typename T > | |
| Ptr< T > | ns3::Create (void) | 
| Create class instances by constructors with varying numbers of arguments and return them by Ptr.  More... | |
| template<typename T , typename T1 > | |
| Ptr< T > | ns3::Create (T1 a1) | 
| template<typename T , typename T1 , typename T2 > | |
| Ptr< T > | ns3::Create (T1 a1, T2 a2) | 
| template<typename T , typename T1 , typename T2 , typename T3 > | |
| Ptr< T > | ns3::Create (T1 a1, T2 a2, T3 a3) | 
| template<typename T , typename T1 , typename T2 , typename T3 , typename T4 > | |
| Ptr< T > | ns3::Create (T1 a1, T2 a2, T3 a3, T4 a4) | 
| template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
| Ptr< T > | ns3::Create (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5) | 
| template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > | |
| Ptr< T > | ns3::Create (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6) | 
| template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > | |
| Ptr< T > | ns3::Create (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7) | 
| template<typename U > | |
| U * | ns3::GetPointer (const Ptr< U > &p) | 
| template<typename T > | |
| std::ostream & | ns3::operator<< (std::ostream &os, const Ptr< T > &p) | 
| Output streamer.  More... | |
| template<typename U > | |
| U * | ns3::PeekPointer (const Ptr< U > &p) | 
| template<typename T1 , typename T2 > | |
| bool | ns3::operator== (Ptr< T1 > const &lhs, T2 const *rhs) | 
| Equality operator.  More... | |
| template<typename T1 , typename T2 > | |
| bool | ns3::operator== (T1 const *lhs, Ptr< T2 > &rhs) | 
| Equality operator.  More... | |
| template<typename T1 , typename T2 > | |
| bool | ns3::operator== (Ptr< T1 > const &lhs, Ptr< T2 > const &rhs) | 
| Equality operator.  More... | |
| template<typename T1 , typename T2 > | |
| bool | ns3::operator!= (Ptr< T1 > const &lhs, T2 const *rhs) | 
| Inequality operator.  More... | |
| template<typename T1 , typename T2 > | |
| bool | ns3::operator!= (T1 const *lhs, Ptr< T2 > &rhs) | 
| Inequality operator.  More... | |
| template<typename T1 , typename T2 > | |
| bool | ns3::operator!= (Ptr< T1 > const &lhs, Ptr< T2 > const &rhs) | 
| Inequality operator.  More... | |
| template<typename T > | |
| bool | ns3::operator< (const Ptr< T > &lhs, const Ptr< T > &rhs) | 
| Comparison operator applied to the underlying pointers.  More... | |
| template<typename T > | |
| bool | ns3::operator<= (const Ptr< T > &lhs, const Ptr< T > &rhs) | 
| Comparison operator applied to the underlying pointers.  More... | |
| template<typename T > | |
| bool | ns3::operator> (const Ptr< T > &lhs, const Ptr< T > &rhs) | 
| Comparison operator applied to the underlying pointers.  More... | |
| template<typename T > | |
| bool | ns3::operator>= (const Ptr< T > &lhs, const Ptr< T > &rhs) | 
| Comparison operator applied to the underlying pointers.  More... | |
| template<typename T1 , typename T2 > | |
| Ptr< T1 > | ns3::ConstCast (Ptr< T2 > const &p) | 
| Cast a Ptr.  More... | |
| template<typename T1 , typename T2 > | |
| Ptr< T1 > | ns3::DynamicCast (Ptr< T2 > const &p) | 
| Cast a Ptr.  More... | |
| template<typename T1 , typename T2 > | |
| Ptr< T1 > | ns3::StaticCast (Ptr< T2 > const &p) | 
| Cast a Ptr.  More... | |
| template<typename T > | |
| Ptr< T > | ns3::Copy (Ptr< T > object) | 
| Return a deep copy of a Ptr.  More... | |
Smart pointer implementation.
Definition in file ptr.h.