Public Member Functions | List of all members
sf::ResourcePtr< T > Class Template Reference

Safe pointer to a T resource (inheriting from sf::Resource<T>), its pointer is automatically reseted when the resource is destroyed. More...

#include <Resource.hpp>

Public Member Functions

 ResourcePtr ()
 Default constructor. More...
 
 ResourcePtr (const T *Resource)
 Construct from a raw resource. More...
 
 ResourcePtr (const ResourcePtr< T > &Copy)
 Copy constructor. More...
 
 ~ResourcePtr ()
 Destructor. More...
 
ResourcePtr< T > & operator= (const ResourcePtr< T > &Other)
 Assignment operator from another ResourcePtr. More...
 
ResourcePtr< T > & operator= (const T *Resource)
 Assignment operator from a raw resource. More...
 
 operator const T * () const
 Cast operator to implicitely convert the resource pointer to its raw pointer type. More...
 
const T & operator* () const
 Operator * overload to return a reference to the actual resource. More...
 
const T * operator-> () const
 Operator -> overload to return a pointer to the actual resource. More...
 
void OnResourceDestroyed ()
 Function called when the observed resource is about to be destroyed. More...
 

Detailed Description

template<typename T>
class sf::ResourcePtr< T >

Safe pointer to a T resource (inheriting from sf::Resource<T>), its pointer is automatically reseted when the resource is destroyed.

Definition at line 43 of file Resource.hpp.

Constructor & Destructor Documentation

◆ ResourcePtr() [1/3]

template<typename T>
ResourcePtr::ResourcePtr ( )

Default constructor.

Definition at line 30 of file ResourcePtr.inl.

◆ ResourcePtr() [2/3]

template<typename T>
ResourcePtr::ResourcePtr ( const T *  Resource)

Construct from a raw resource.

Parameters
Resource: Internal resource

Definition at line 41 of file ResourcePtr.inl.

◆ ResourcePtr() [3/3]

template<typename T>
ResourcePtr::ResourcePtr ( const ResourcePtr< T > &  Copy)

Copy constructor.

Parameters
Copy: Instance to copy

Definition at line 53 of file ResourcePtr.inl.

◆ ~ResourcePtr()

template<typename T>
ResourcePtr::~ResourcePtr ( )

Destructor.

Definition at line 65 of file ResourcePtr.inl.

Member Function Documentation

◆ OnResourceDestroyed()

template<typename T>
void ResourcePtr::OnResourceDestroyed ( )

Function called when the observed resource is about to be destroyed.

Definition at line 146 of file ResourcePtr.inl.

◆ operator const T *()

template<typename T>
ResourcePtr::operator const T * ( ) const

Cast operator to implicitely convert the resource pointer to its raw pointer type.

This might be dangerous in the general case, but in this context it is safe enough to define this operator

Returns
Pointer to the actual resource

This might be dangerous in the general case, but in this context it is safe enough to define this operator

Definition at line 115 of file ResourcePtr.inl.

◆ operator*()

template<typename T>
const T & ResourcePtr::operator* ( ) const

Operator * overload to return a reference to the actual resource.

Returns
Reference to the internal resource

Definition at line 125 of file ResourcePtr.inl.

◆ operator->()

template<typename T>
const T * ResourcePtr::operator-> ( ) const

Operator -> overload to return a pointer to the actual resource.

Returns
Pointer to the internal resource

Definition at line 135 of file ResourcePtr.inl.

◆ operator=() [1/2]

template<typename T>
ResourcePtr< T > & ResourcePtr::operator= ( const ResourcePtr< T > &  Other)

Assignment operator from another ResourcePtr.

Parameters
Other: Resource pointer to assign
Returns
Reference to this

Definition at line 76 of file ResourcePtr.inl.

◆ operator=() [2/2]

template<typename T>
ResourcePtr< T > & ResourcePtr::operator= ( const T *  Resource)

Assignment operator from a raw resource.

Parameters
Resource: Resource to assign
Returns
Reference to this

Definition at line 94 of file ResourcePtr.inl.


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