Nameless Engine
|
#include <ShaderCpuWriteResourceUniquePtr.h>
Public Member Functions | |
ShaderCpuWriteResourceUniquePtr (const ShaderCpuWriteResourceUniquePtr &)=delete | |
ShaderCpuWriteResourceUniquePtr & | operator= (const ShaderCpuWriteResourceUniquePtr &)=delete |
ShaderCpuWriteResourceUniquePtr (ShaderCpuWriteResourceUniquePtr &&other) noexcept | |
ShaderCpuWriteResourceUniquePtr & | operator= (ShaderCpuWriteResourceUniquePtr &&other) noexcept |
void | markAsNeedsUpdate () |
ShaderCpuWriteResource * | getResource () const |
Private Member Functions | |
ShaderCpuWriteResourceUniquePtr (ShaderCpuWriteResourceManager *pManager, ShaderCpuWriteResource *pResource) | |
Private Attributes | |
ShaderCpuWriteResourceManager * | pManager = nullptr |
ShaderCpuWriteResource * | pResource = nullptr |
Friends | |
class | ShaderCpuWriteResourceManager |
Small raw pointer wrapper that acts like std::unique_ptr
for shader CPU write resources 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. void ne::ShaderCpuWriteResourceUniquePtr::markAsNeedsUpdate | ( | ) |
Marks shader resource as "needs update", this will cause resource's update callback to be called multiple times.
|
noexcept |
Move assignment.
other | Other object. |
|
private |
Manager that owns the resource we are pointing to.
|
private |
Resource we are pointing to.