Minor fixes
This commit is contained in:
@@ -61,6 +61,11 @@ namespace Nz
|
||||
Music& operator=(Music&&) = delete;
|
||||
|
||||
private:
|
||||
bool FillAndQueueBuffer(std::shared_ptr<AudioBuffer> buffer);
|
||||
void MusicThread(std::condition_variable& cv, std::mutex& m, std::exception_ptr& err, bool startPaused);
|
||||
void StartThread(bool startPaused);
|
||||
void StopThread();
|
||||
|
||||
AudioFormat m_audioFormat;
|
||||
std::atomic_bool m_streaming;
|
||||
std::atomic<UInt64> m_processedSamples;
|
||||
@@ -72,11 +77,7 @@ namespace Nz
|
||||
UInt32 m_sampleRate;
|
||||
UInt64 m_streamOffset;
|
||||
bool m_looping;
|
||||
|
||||
bool FillAndQueueBuffer(std::shared_ptr<AudioBuffer> buffer);
|
||||
void MusicThread(std::condition_variable& cv, std::mutex& m, std::exception_ptr& err, bool startPaused);
|
||||
void StartThread(bool startPaused);
|
||||
void StopThread();
|
||||
bool m_musicStarted;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
#include <Nazara/Renderer/Config.hpp>
|
||||
#include <Nazara/Renderer/Enums.hpp>
|
||||
#include <NazaraUtils/FunctionRef.hpp>
|
||||
#include <functional>
|
||||
#include <concepts>
|
||||
#include <type_traits>
|
||||
#include <vector>
|
||||
|
||||
@@ -28,7 +28,7 @@ namespace Nz
|
||||
class Releasable;
|
||||
class ReleasableCallback;
|
||||
template<typename T> class ReleasableData;
|
||||
template<typename T> class ReleasableLambda;
|
||||
template<std::invocable T> class ReleasableFunctor;
|
||||
|
||||
virtual ~RenderResources();
|
||||
|
||||
@@ -42,7 +42,7 @@ namespace Nz
|
||||
|
||||
template<typename T> void PushForRelease(const T& value) = delete;
|
||||
template<typename T> void PushForRelease(T&& value);
|
||||
template<typename F> void PushReleaseCallback(F&& callback);
|
||||
template<std::invocable F> void PushReleaseCallback(F&& callback);
|
||||
|
||||
virtual void SubmitCommandBuffer(CommandBuffer* commandBuffer, QueueTypeFlags queueTypeFlags) = 0;
|
||||
|
||||
@@ -93,19 +93,19 @@ namespace Nz
|
||||
T m_data;
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
class RenderResources::ReleasableLambda final : public ReleasableCallback
|
||||
template<std::invocable T>
|
||||
class RenderResources::ReleasableFunctor final : public ReleasableCallback
|
||||
{
|
||||
public:
|
||||
template<typename U> ReleasableLambda(U&& lambda);
|
||||
ReleasableLambda(const ReleasableLambda&) = delete;
|
||||
ReleasableLambda(ReleasableLambda&&) = delete;
|
||||
~ReleasableLambda() = default;
|
||||
template<typename U> requires(std::constructible_from<T, U&&>) ReleasableFunctor(U&& lambda);
|
||||
ReleasableFunctor(const ReleasableFunctor&) = delete;
|
||||
ReleasableFunctor(ReleasableFunctor&&) = delete;
|
||||
~ReleasableFunctor() = default;
|
||||
|
||||
void Release() override;
|
||||
|
||||
ReleasableLambda& operator=(const ReleasableLambda&) = delete;
|
||||
ReleasableLambda& operator=(ReleasableLambda&&) = delete;
|
||||
ReleasableFunctor& operator=(const ReleasableFunctor&) = delete;
|
||||
ReleasableFunctor& operator=(ReleasableFunctor&&) = delete;
|
||||
|
||||
private:
|
||||
T m_lambda;
|
||||
|
||||
@@ -47,10 +47,10 @@ namespace Nz
|
||||
m_releaseQueue.push_back(releasable);
|
||||
}
|
||||
|
||||
template<typename F>
|
||||
template<std::invocable F>
|
||||
void RenderResources::PushReleaseCallback(F&& callback)
|
||||
{
|
||||
using ReleaseFunctor = ReleasableLambda<std::remove_cv_t<std::remove_reference_t<F>>>;
|
||||
using ReleaseFunctor = ReleasableFunctor<std::remove_cv_t<std::remove_reference_t<F>>>;
|
||||
|
||||
ReleaseFunctor* releasable = Allocate<ReleaseFunctor>();
|
||||
PlacementNew(releasable, std::forward<F>(callback));
|
||||
@@ -117,19 +117,19 @@ namespace Nz
|
||||
{
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
template<std::invocable T>
|
||||
template<typename U>
|
||||
RenderResources::ReleasableLambda<T>::ReleasableLambda(U&& lambda) :
|
||||
requires(std::constructible_from<T, U&&>)
|
||||
RenderResources::ReleasableFunctor<T>::ReleasableFunctor(U&& lambda) :
|
||||
m_lambda(std::forward<U>(lambda))
|
||||
{
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void RenderResources::ReleasableLambda<T>::Release()
|
||||
template<std::invocable T>
|
||||
void RenderResources::ReleasableFunctor<T>::Release()
|
||||
{
|
||||
m_lambda();
|
||||
}
|
||||
}
|
||||
|
||||
#include <Nazara/Renderer/DebugOff.hpp>
|
||||
#include "RenderResources.hpp"
|
||||
|
||||
@@ -153,7 +153,7 @@ namespace Nz
|
||||
|
||||
inline void OBJParser::Error(const std::string& message)
|
||||
{
|
||||
NazaraErrorFmt("{0} at line #{1}", message, m_lineCount);
|
||||
NazaraErrorFmt("{0} on line #{1}", message, m_lineCount);
|
||||
}
|
||||
|
||||
inline void OBJParser::Flush() const
|
||||
@@ -164,7 +164,7 @@ namespace Nz
|
||||
|
||||
inline void OBJParser::Warning(const std::string& message)
|
||||
{
|
||||
NazaraWarningFmt("{0} at line #{1}", message, m_lineCount);
|
||||
NazaraWarningFmt("{0} on line #{1}", message, m_lineCount);
|
||||
}
|
||||
|
||||
inline bool OBJParser::UnrecognizedLine(bool error)
|
||||
|
||||
Reference in New Issue
Block a user