Smart pointer implementation. More...
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.