neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
reference_counted.hpp File Reference
#include <neolib/neolib.hpp>
#include <atomic>
#include <vector>
#include <functional>
#include <neolib/core/i_discoverable.hpp>

Go to the source code of this file.

Classes

class  neolib::ref_control_block
 
class  neolib::reference_counted< Base, DeallocateOnRelease >
 
class  neolib::ref_ptr< Interface >
 
class  neolib::weak_ref_ptr< Interface >
 

Namespaces

namespace  neolib
 

Functions

template<typename Interface >
bool neolib::operator< (ref_ptr< Interface > const &lhs, ref_ptr< Interface > const &rhs) noexcept
 
template<typename ConcreteType , typename... Args>
ref_ptr< ConcreteType > neolib::make_ref (Args &&... args)
 
template<class T , class U >
ref_ptr< Tneolib::static_pointer_cast (ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::static_pointer_cast (ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::const_pointer_cast (ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::const_pointer_cast (ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::reinterpret_pointer_cast (ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::reinterpret_pointer_cast (ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::dynamic_pointer_cast (ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::dynamic_pointer_cast (ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::static_pointer_cast (i_ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::static_pointer_cast (i_ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::const_pointer_cast (i_ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::const_pointer_cast (i_ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::reinterpret_pointer_cast (i_ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::reinterpret_pointer_cast (i_ref_ptr< U > &&aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::dynamic_pointer_cast (i_ref_ptr< U > const &aOther) noexcept
 
template<class T , class U >
ref_ptr< Tneolib::dynamic_pointer_cast (i_ref_ptr< U > &&aOther) noexcept