Added a static New method to RefCounted-derived classes

Former-commit-id: efd9e68e050fb6cc7e0df7a7c222ca759c502dc5
This commit is contained in:
Lynix
2015-01-25 23:41:09 +01:00
parent 5f5be93992
commit 0db92e671d
59 changed files with 532 additions and 354 deletions

View File

@@ -84,52 +84,40 @@ bool NzSound::IsPlaying() const
bool NzSound::LoadFromFile(const NzString& filePath, const NzSoundBufferParams& params)
{
std::unique_ptr<NzSoundBuffer> buffer(new NzSoundBuffer);
buffer->SetPersistent(false);
NzSoundBufferRef buffer = NzSoundBuffer::New();
if (!buffer->LoadFromFile(filePath, params))
{
NazaraError("Failed to load buffer from file (" + filePath + ')');
return false;
}
SetBuffer(buffer.get());
buffer.release();
SetBuffer(buffer);
return true;
}
bool NzSound::LoadFromMemory(const void* data, std::size_t size, const NzSoundBufferParams& params)
{
std::unique_ptr<NzSoundBuffer> buffer(new NzSoundBuffer);
buffer->SetPersistent(false);
NzSoundBufferRef buffer = NzSoundBuffer::New();
if (!buffer->LoadFromMemory(data, size, params))
{
NazaraError("Failed to load buffer from memory (" + NzString::Pointer(data) + ')');
return false;
}
SetBuffer(buffer.get());
buffer.release();
SetBuffer(buffer);
return true;
}
bool NzSound::LoadFromStream(NzInputStream& stream, const NzSoundBufferParams& params)
{
std::unique_ptr<NzSoundBuffer> buffer(new NzSoundBuffer);
buffer->SetPersistent(false);
NzSoundBufferRef buffer = NzSoundBuffer::New();
if (!buffer->LoadFromStream(stream, params))
{
NazaraError("Failed to load buffer from stream");
return false;
}
SetBuffer(buffer.get());
buffer.release();
SetBuffer(buffer);
return true;
}