Free Electron
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
fe::Handled< T > Class Template Reference

Base class providing an fe::Handle to the derived class. More...

#include <Handled.h>

Inheritance diagram for fe::Handled< T >:
Inheritance graph
[legend]

Public Member Functions

const hp< T > & getHandle (void) const
 Get a safe handle to this object. More...
 
- Public Member Functions inherited from fe::Protectable
virtual I32 protection (void) const
 
virtual void protect (void)
 
virtual void unprotect (void)
 
virtual Protectableclone (Protectable *pInstance=NULL)
 
- Public Member Functions inherited from fe::Counted
virtual void acquire (void)
 Increment the reference count. More...
 
virtual void acquire (int &rCount)
 Increment the reference count (and get the count) More...
 
virtual void release (void)
 Decrement the reference count. More...
 
virtual void abandon (void)
 Decrement the reference count. More...
 
int count (void) const
 Return the count of references. More...
 
void setName (const String &)
 
void trackReference (void *pReference, String what)
 
void untrackReference (void *pReference)
 
void registerRegion (void *pT, U32 bytes)
 

Protected Member Functions

void abandonHandle (void)
 
- Protected Member Functions inherited from fe::Counted
int releaseInternal (void)
 Decrement the reference count. More...
 
void suppressReport (void)
 

Private Attributes

hp< T > m_handle
 

Additional Inherited Members

- Static Public Member Functions inherited from fe::Counted
static String reportTracker (void)
 
static U32 trackerCount (void)
 

Detailed Description

template<class T>
class fe::Handled< T >

Base class providing an fe::Handle to the derived class.

Member Function Documentation

◆ getHandle()

template<class T>
const hp<T>& fe::Handled< T >::getHandle ( void  ) const
inline

Get a safe handle to this object.

Unlike the smart pointer sp<>, this handle does not force the object to persist. Instead, it can be checked to determine if it is still valid.

Referenced by fe::Library::registry().


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