Added move constructor/operator to Shader
Former-commit-id: b947e0ac0dcddcfe64c83b63cf89df0e0850cbd2
This commit is contained in:
parent
e194d11374
commit
e6cef2ddbf
|
|
@ -28,6 +28,7 @@ class NAZARA_API NzShader : public NzResource, NzNonCopyable
|
||||||
public:
|
public:
|
||||||
NzShader() = default;
|
NzShader() = default;
|
||||||
NzShader(nzShaderLanguage language);
|
NzShader(nzShaderLanguage language);
|
||||||
|
NzShader(NzShader&& shader);
|
||||||
~NzShader();
|
~NzShader();
|
||||||
|
|
||||||
bool Create(nzShaderLanguage language);
|
bool Create(nzShaderLanguage language);
|
||||||
|
|
@ -68,6 +69,8 @@ class NAZARA_API NzShader : public NzResource, NzNonCopyable
|
||||||
|
|
||||||
void Unlock();
|
void Unlock();
|
||||||
|
|
||||||
|
NzShader& operator=(NzShader&& shader);
|
||||||
|
|
||||||
static bool IsLanguageSupported(nzShaderLanguage language);
|
static bool IsLanguageSupported(nzShaderLanguage language);
|
||||||
static bool IsTypeSupported(nzShaderType type);
|
static bool IsTypeSupported(nzShaderType type);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,12 @@ NzShader::NzShader(nzShaderLanguage language)
|
||||||
Create(language);
|
Create(language);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NzShader::NzShader(NzShader&& shader) :
|
||||||
|
m_impl(shader.m_impl)
|
||||||
|
{
|
||||||
|
shader.m_impl = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
NzShader::~NzShader()
|
NzShader::~NzShader()
|
||||||
{
|
{
|
||||||
Destroy();
|
Destroy();
|
||||||
|
|
@ -609,6 +615,16 @@ void NzShader::Unlock()
|
||||||
return m_impl->Unlock();
|
return m_impl->Unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NzShader& NzShader::operator=(NzShader&& shader)
|
||||||
|
{
|
||||||
|
Destroy();
|
||||||
|
|
||||||
|
m_impl = shader.m_impl;
|
||||||
|
shader.m_impl = nullptr;
|
||||||
|
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
bool NzShader::IsLanguageSupported(nzShaderLanguage language)
|
bool NzShader::IsLanguageSupported(nzShaderLanguage language)
|
||||||
{
|
{
|
||||||
switch (language)
|
switch (language)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue