Nameless Engine
|
#include <ShaderTextureResourceBindingUniquePtr.h>
Public Member Functions | |
ShaderTextureResourceBindingUniquePtr (const ShaderTextureResourceBindingUniquePtr &)=delete | |
ShaderTextureResourceBindingUniquePtr & | operator= (const ShaderTextureResourceBindingUniquePtr &)=delete |
ShaderTextureResourceBindingUniquePtr (ShaderTextureResourceBindingUniquePtr &&other) noexcept | |
ShaderTextureResourceBindingUniquePtr & | operator= (ShaderTextureResourceBindingUniquePtr &&other) noexcept |
ShaderTextureResourceBinding * | getResource () const |
Private Member Functions | |
ShaderTextureResourceBindingUniquePtr (ShaderTextureResourceBindingManager *pManager, ShaderTextureResourceBinding *pResource) | |
Private Attributes | |
ShaderTextureResourceBindingManager * | pManager = nullptr |
ShaderTextureResourceBinding * | pResource = nullptr |
Friends | |
class | ShaderTextureResourceBindingManager |
Small raw pointer wrapper that acts like std::unique_ptr
for shader texture resource bindings to do some extra work when started/stopped referencing a resource.
When deleted causes the resource to be also deleted.
|
noexcept |
Move constructor.
other | Other object. |
|
private |
Constructs a new unique pointer.
pManager | Manager that owns the resource. |
pResource | Resource to point to. |
|
inline |
Returns the underlying resource.
nullptr
if moved or not initialized, otherwise valid pointer to resource.
|
noexcept |
Move assignment.
other | Other object. |
|
private |
Manager that owns the resource we are pointing to.
|
private |
Resource we are pointing to.