gem5  v19.0.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Functions
refcnt.hh File Reference

Classes for managing reference counted objects. More...

#include <type_traits>

Go to the source code of this file.

Classes

class  RefCounted
 Derive from RefCounted if you want to enable reference counting of this class. More...
 
class  RefCountingPtr< T >
 If you want a reference counting pointer to a mutable object, create it like this: More...
 

Functions

template<class T >
bool operator== (const RefCountingPtr< T > &l, const RefCountingPtr< T > &r)
 Check for equality of two reference counting pointers. More...
 
template<class T >
bool operator== (const RefCountingPtr< T > &l, const T *r)
 Check for equality of of a reference counting pointers and a regular pointer. More...
 
template<class T >
bool operator== (const T *l, const RefCountingPtr< T > &r)
 Check for equality of of a reference counting pointers and a regular pointer. More...
 
template<class T >
bool operator!= (const RefCountingPtr< T > &l, const RefCountingPtr< T > &r)
 Check for inequality of two reference counting pointers. More...
 
template<class T >
bool operator!= (const RefCountingPtr< T > &l, const T *r)
 Check for inequality of of a reference counting pointers and a regular pointer. More...
 
template<class T >
bool operator!= (const T *l, const RefCountingPtr< T > &r)
 Check for inequality of of a reference counting pointers and a regular pointer. More...
 

Detailed Description

Classes for managing reference counted objects.

Definition in file refcnt.hh.

Function Documentation

◆ operator!=() [1/3]

template<class T >
bool operator!= ( const RefCountingPtr< T > &  l,
const RefCountingPtr< T > &  r 
)
inline

Check for inequality of two reference counting pointers.

Definition at line 274 of file refcnt.hh.

References RefCountingPtr< T >::get().

Referenced by ArmISA::EndBitUnion(), and sc_core::sc_process_handle::operator=().

◆ operator!=() [2/3]

template<class T >
bool operator!= ( const RefCountingPtr< T > &  l,
const T *  r 
)
inline

Check for inequality of of a reference counting pointers and a regular pointer.

Definition at line 280 of file refcnt.hh.

References RefCountingPtr< T >::get(), and MipsISA::r.

◆ operator!=() [3/3]

template<class T >
bool operator!= ( const T *  l,
const RefCountingPtr< T > &  r 
)
inline

Check for inequality of of a reference counting pointers and a regular pointer.

Definition at line 286 of file refcnt.hh.

References RefCountingPtr< T >::get().

◆ operator==() [1/3]

template<class T >
bool operator== ( const RefCountingPtr< T > &  l,
const RefCountingPtr< T > &  r 
)
inline

Check for equality of two reference counting pointers.

Definition at line 257 of file refcnt.hh.

References RefCountingPtr< T >::get().

◆ operator==() [2/3]

template<class T >
bool operator== ( const RefCountingPtr< T > &  l,
const T *  r 
)
inline

Check for equality of of a reference counting pointers and a regular pointer.

Definition at line 263 of file refcnt.hh.

References RefCountingPtr< T >::get(), and MipsISA::r.

◆ operator==() [3/3]

template<class T >
bool operator== ( const T *  l,
const RefCountingPtr< T > &  r 
)
inline

Check for equality of of a reference counting pointers and a regular pointer.

Definition at line 269 of file refcnt.hh.

References RefCountingPtr< T >::get().


Generated on Fri Feb 28 2020 16:27:06 for gem5 by doxygen 1.8.13