NVIDIA DeepStream SDK API Reference

9.2 Release
nostd::shared_ptr< T > Class Template Reference

Detailed Description

template<class T>
class nostd::shared_ptr< T >

Provide a type-erased version of std::shared_ptr that has ABI stability.

Definition at line 28 of file includes/opentelemetry/nostd/shared_ptr.h.

Inheritance diagram for nostd::shared_ptr< T >:

Public Types

using element_type = T
 
using pointer = element_type *
 
using element_type = T
 
using pointer = element_type *
 

Public Member Functions

 shared_ptr () noexcept
 
 shared_ptr (pointer ptr)
 
 shared_ptr (std::shared_ptr< T > ptr) noexcept
 
 shared_ptr (shared_ptr &&other) noexcept
 
template<class U , typename std::enable_if< std::is_convertible< U *, pointer >::value >::type * = nullptr>
 shared_ptr (shared_ptr< U > &&other) noexcept
 
 shared_ptr (const shared_ptr &other) noexcept
 
 shared_ptr (unique_ptr< T > &&other) noexcept
 
 shared_ptr (std::unique_ptr< T > &&other) noexcept
 
 ~shared_ptr ()
 
shared_ptr & operator= (shared_ptr &&other) noexcept
 
shared_ptr & operator= (std::nullptr_t) noexcept
 
shared_ptr & operator= (const shared_ptr &other) noexcept
 
element_type & operator* () const noexcept
 
pointer operator-> () const noexcept
 
 operator bool () const noexcept
 
pointer get () const noexcept
 
void swap (shared_ptr< T > &other) noexcept
 
 shared_ptr () noexcept
 
 shared_ptr (pointer ptr)
 
 shared_ptr (std::shared_ptr< T > ptr) noexcept
 
 shared_ptr (shared_ptr &&other) noexcept
 
template<class U , typename std::enable_if< std::is_convertible< U *, pointer >::value >::type * = nullptr>
 shared_ptr (shared_ptr< U > &&other) noexcept
 
 shared_ptr (const shared_ptr &other) noexcept
 
 shared_ptr (unique_ptr< T > &&other) noexcept
 
 shared_ptr (std::unique_ptr< T > &&other) noexcept
 
 ~shared_ptr ()
 
shared_ptr & operator= (shared_ptr &&other) noexcept
 
shared_ptr & operator= (std::nullptr_t) noexcept
 
shared_ptr & operator= (const shared_ptr &other) noexcept
 
element_type & operator* () const noexcept
 
pointer operator-> () const noexcept
 
 operator bool () const noexcept
 
pointer get () const noexcept
 
void swap (shared_ptr< T > &other) noexcept
 

Friends

template<typename U >
class shared_ptr
 

Member Typedef Documentation

◆ element_type [1/2]

template<class T >
using nostd::shared_ptr< T >::element_type = T

Definition at line 31 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ element_type [2/2]

template<class T >
using nostd::shared_ptr< T >::element_type = T

◆ pointer [1/2]

template<class T >
using nostd::shared_ptr< T >::pointer = element_type *

◆ pointer [2/2]

template<class T >
using nostd::shared_ptr< T >::pointer = element_type *

Definition at line 32 of file includes/opentelemetry/nostd/shared_ptr.h.

Constructor & Destructor Documentation

◆ shared_ptr() [1/16]

template<typename U >
shared_ptr
inlinenoexcept

Definition at line 82 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [2/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( pointer  ptr)
inlineexplicit

Definition at line 84 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [3/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( std::shared_ptr< T >  ptr)
inlinenoexcept

Definition at line 90 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [4/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( shared_ptr< T > &&  other)
inlinenoexcept

Definition at line 95 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [5/16]

template<class T >
template<class U , typename std::enable_if< std::is_convertible< U *, pointer >::value >::type * = nullptr>
nostd::shared_ptr< T >::shared_ptr ( shared_ptr< U > &&  other)
inlinenoexcept

Definition at line 99 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [6/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( const shared_ptr< T > &  other)
inlinenoexcept

Definition at line 104 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [7/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( unique_ptr< T > &&  other)
inlinenoexcept

Definition at line 106 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [8/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( std::unique_ptr< T > &&  other)
inlinenoexcept

Definition at line 112 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ ~shared_ptr() [1/2]

template<class T >
nostd::shared_ptr< T >::~shared_ptr ( )
inline

Definition at line 118 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ shared_ptr() [9/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( )
inlinenoexcept

◆ shared_ptr() [10/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( pointer  ptr)
inlineexplicit

◆ shared_ptr() [11/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( std::shared_ptr< T >  ptr)
inlinenoexcept

◆ shared_ptr() [12/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( shared_ptr< T > &&  other)
inlinenoexcept

◆ shared_ptr() [13/16]

template<class T >
template<class U , typename std::enable_if< std::is_convertible< U *, pointer >::value >::type * = nullptr>
nostd::shared_ptr< T >::shared_ptr ( shared_ptr< U > &&  other)
inlinenoexcept

◆ shared_ptr() [14/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( const shared_ptr< T > &  other)
inlinenoexcept

◆ shared_ptr() [15/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( unique_ptr< T > &&  other)
inlinenoexcept

◆ shared_ptr() [16/16]

template<class T >
nostd::shared_ptr< T >::shared_ptr ( std::unique_ptr< T > &&  other)
inlinenoexcept

◆ ~shared_ptr() [2/2]

template<class T >
nostd::shared_ptr< T >::~shared_ptr ( )
inline

Member Function Documentation

◆ get() [1/2]

template<class T >
pointer nostd::shared_ptr< T >::get ( ) const
inlinenoexcept

◆ get() [2/2]

template<class T >
pointer nostd::shared_ptr< T >::get ( ) const
inlinenoexcept

◆ operator bool() [1/2]

template<class T >
nostd::shared_ptr< T >::operator bool ( ) const
inlinenoexcept

Definition at line 144 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ operator bool() [2/2]

template<class T >
nostd::shared_ptr< T >::operator bool ( ) const
inlinenoexcept

◆ operator*() [1/2]

template<class T >
element_type& nostd::shared_ptr< T >::operator* ( ) const
inlinenoexcept

◆ operator*() [2/2]

template<class T >
element_type& nostd::shared_ptr< T >::operator* ( ) const
inlinenoexcept

Definition at line 140 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ operator->() [1/2]

template<class T >
pointer nostd::shared_ptr< T >::operator-> ( ) const
inlinenoexcept

Definition at line 142 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ operator->() [2/2]

template<class T >
pointer nostd::shared_ptr< T >::operator-> ( ) const
inlinenoexcept

◆ operator=() [1/6]

template<class T >
shared_ptr& nostd::shared_ptr< T >::operator= ( const shared_ptr< T > &  other)
inlinenoexcept

◆ operator=() [2/6]

template<class T >
shared_ptr& nostd::shared_ptr< T >::operator= ( const shared_ptr< T > &  other)
inlinenoexcept

Definition at line 133 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ operator=() [3/6]

template<class T >
shared_ptr& nostd::shared_ptr< T >::operator= ( shared_ptr< T > &&  other)
inlinenoexcept

◆ operator=() [4/6]

template<class T >
shared_ptr& nostd::shared_ptr< T >::operator= ( shared_ptr< T > &&  other)
inlinenoexcept

Definition at line 120 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ operator=() [5/6]

template<class T >
shared_ptr& nostd::shared_ptr< T >::operator= ( std::nullptr_t  )
inlinenoexcept

Definition at line 127 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ operator=() [6/6]

template<class T >
shared_ptr& nostd::shared_ptr< T >::operator= ( std::nullptr_t  )
inlinenoexcept

◆ swap() [1/2]

template<class T >
void nostd::shared_ptr< T >::swap ( shared_ptr< T > &  other)
inlinenoexcept

Definition at line 148 of file includes/opentelemetry/nostd/shared_ptr.h.

◆ swap() [2/2]

template<class T >
void nostd::shared_ptr< T >::swap ( shared_ptr< T > &  other)
inlinenoexcept

Friends And Related Function Documentation

◆ shared_ptr

template<class T >
template<typename U >
friend class shared_ptr
friend

Definition at line 157 of file includes/opentelemetry/nostd/shared_ptr.h.


The documentation for this class was generated from the following file: