INET Framework for OMNeT++/OMNEST
IntrusivePtr.h File Reference
#include <iosfwd>
#include "inet/common/INETDefs.h"

Classes

class  inet::IntrusivePtr< T >
 A smart pointer that uses intrusive reference counting. More...
 
class  inet::IntrusivePtrCounter< T >
 
class  inet::IntrusivePtrCounter< T >
 

Namespaces

 inet
 Copyright (c) 2005 Jan Ringo�, www.ringos.cz.
 

Macros

#define INET_ALWAYS_INLINE   __attribute__((always_inline)) inline
 

Functions

template<class T , class U >
INET_ALWAYS_INLINE bool inet::operator== (IntrusivePtr< T > const &a, IntrusivePtr< U > const &b) noexcept
 
template<class T , class U >
INET_ALWAYS_INLINE bool inet::operator!= (IntrusivePtr< T > const &a, IntrusivePtr< U > const &b) noexcept
 
template<class T , class U >
INET_ALWAYS_INLINE bool inet::operator== (IntrusivePtr< T > const &a, U *b) noexcept
 
template<class T , class U >
INET_ALWAYS_INLINE bool inet::operator!= (IntrusivePtr< T > const &a, U *b) noexcept
 
template<class T , class U >
INET_ALWAYS_INLINE bool inet::operator== (T *a, IntrusivePtr< U > const &b) noexcept
 
template<class T , class U >
INET_ALWAYS_INLINE bool inet::operator!= (T *a, IntrusivePtr< U > const &b) noexcept
 
template<class T >
INET_ALWAYS_INLINE bool inet::operator== (IntrusivePtr< T > const &p, std::nullptr_t) noexcept
 
template<class T >
INET_ALWAYS_INLINE bool inet::operator== (std::nullptr_t, IntrusivePtr< T > const &p) noexcept
 
template<class T >
INET_ALWAYS_INLINE bool inet::operator!= (IntrusivePtr< T > const &p, std::nullptr_t) noexcept
 
template<class T >
INET_ALWAYS_INLINE bool inet::operator!= (std::nullptr_t, IntrusivePtr< T > const &p) noexcept
 
template<class T >
INET_ALWAYS_INLINE bool inet::operator< (IntrusivePtr< T > const &a, IntrusivePtr< T > const &b) noexcept
 
template<class T >
INET_ALWAYS_INLINE void inet::swap (IntrusivePtr< T > &lhs, IntrusivePtr< T > &ptr) noexcept
 
template<class T >
INET_ALWAYS_INLINE T * inet::get_pointer (IntrusivePtr< T > const &p) noexcept
 
template<class T , class U >
INET_ALWAYS_INLINE IntrusivePtr< T > inet::static_pointer_cast (IntrusivePtr< U > const &p)
 
template<class T , class U >
INET_ALWAYS_INLINE IntrusivePtr< T > inet::const_pointer_cast (IntrusivePtr< U > const &p)
 
template<class T , class U >
INET_ALWAYS_INLINE IntrusivePtr< T > inet::dynamic_pointer_cast (IntrusivePtr< U > const &p)
 
template<class Y >
INET_ALWAYS_INLINE std::ostream & inet::operator<< (std::ostream &os, IntrusivePtr< Y > const &p)
 
template<typename T >
INET_ALWAYS_INLINE void inet::intrusivePtrCounterIncrement (const IntrusivePtrCounter< T > *p) noexcept
 
template<typename T >
INET_ALWAYS_INLINE void inet::intrusivePtrCounterDecrement (const IntrusivePtrCounter< T > *p) noexcept
 

Macro Definition Documentation

◆ INET_ALWAYS_INLINE

#define INET_ALWAYS_INLINE   __attribute__((always_inline)) inline