VSTGUI 4.10
Graphical User Interface Framework not only for VST plugins
Loading...
Searching...
No Matches
SharedPointer< I > Class Template Reference

#include <vstguibase.h>

+ Inheritance diagram for SharedPointer< I >:

Public Member Functions

 SharedPointer (I *ptr, bool remember=true) noexcept
 
 SharedPointer (const SharedPointer &) noexcept
 
 SharedPointer () noexcept
 
 ~SharedPointer () noexcept
 
I * operator= (I *ptr) noexcept
 
SharedPointer< I > & operator= (const SharedPointer< I > &) noexcept
 
 operator I* () const noexcept
 
I * operator-> () const noexcept
 
I * get () const noexcept
 
template<class T>
T * cast () const
 
 SharedPointer (SharedPointer< I > &&mp) noexcept
 
SharedPointer< I > & operator= (SharedPointer< I > &&mp) noexcept
 
template<typename T>
 SharedPointer (const SharedPointer< T > &op) noexcept
 
template<typename T>
SharedPointeroperator= (const SharedPointer< T > &op) noexcept
 
template<typename T>
 SharedPointer (SharedPointer< T > &&op) noexcept
 
template<typename T>
SharedPointeroperator= (SharedPointer< T > &&op) noexcept
 
template<class I>
 SharedPointer (const SharedPointer< I > &other) noexcept
 

Protected Attributes

I * ptr {nullptr}
 

Friends

template<typename T>
class SharedPointer
 

Constructor & Destructor Documentation

◆ SharedPointer() [1/7]

template<class I>
SharedPointer ( I * ptr,
bool remember = true )
inlinenoexcept

◆ SharedPointer() [2/7]

template<class I>
SharedPointer ( const SharedPointer< I > & )
inlinenoexcept

◆ SharedPointer() [3/7]

template<class I>
SharedPointer ( )
inlinenoexcept

◆ ~SharedPointer()

template<class I>
~SharedPointer ( )
inlinenoexcept

◆ SharedPointer() [4/7]

template<class I>
SharedPointer ( SharedPointer< I > && mp)
inlinenoexcept

◆ SharedPointer() [5/7]

template<class I>
template<typename T>
SharedPointer ( const SharedPointer< T > & op)
inlinenoexcept

◆ SharedPointer() [6/7]

template<class I>
template<typename T>
SharedPointer ( SharedPointer< T > && op)
inlinenoexcept

◆ SharedPointer() [7/7]

template<class I>
template<class I>
SharedPointer ( const SharedPointer< I > & other)
inlinenoexcept

Member Function Documentation

◆ cast()

template<class I>
template<class T>
T * cast ( ) const
inline

◆ get()

template<class I>
I * get ( ) const
inlinenoexcept

◆ operator I*()

template<class I>
operator I* ( ) const
inlinenoexcept

◆ operator->()

template<class I>
I * operator-> ( ) const
inlinenoexcept

◆ operator=() [1/5]

template<class I>
SharedPointer< I > & operator= ( const SharedPointer< I > & _ptr)
inlinenoexcept

◆ operator=() [2/5]

template<class I>
template<typename T>
SharedPointer & operator= ( const SharedPointer< T > & op)
inlinenoexcept

◆ operator=() [3/5]

template<class I>
I * operator= ( I * ptr)
inlinenoexcept

◆ operator=() [4/5]

template<class I>
SharedPointer< I > & operator= ( SharedPointer< I > && mp)
inlinenoexcept

◆ operator=() [5/5]

template<class I>
template<typename T>
SharedPointer & operator= ( SharedPointer< T > && op)
inlinenoexcept

Friends And Related Symbol Documentation

◆ SharedPointer

template<class I>
template<typename T>
friend class SharedPointer
friend

Member Data Documentation

◆ ptr

template<class I>
I* ptr {nullptr}
protected

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