mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-31 09:33:06 +00:00
GBAWidget: Use std::span with SetVideoBuffer()
Previously we were always taking the buffer by value, even if it wasn't being stored anywhere and only read from. We can use a std::span for the same thing.
This commit is contained in:
parent
3f06d32dcd
commit
67a06d17b1
@ -106,7 +106,7 @@ void GBAWidget::GameChanged(const HW::GBA::CoreInfo& info)
|
|||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
|
|
||||||
void GBAWidget::SetVideoBuffer(std::vector<u32> video_buffer)
|
void GBAWidget::SetVideoBuffer(std::span<const u32> video_buffer)
|
||||||
{
|
{
|
||||||
m_previous_frame = std::move(m_last_frame);
|
m_previous_frame = std::move(m_last_frame);
|
||||||
if (video_buffer.size() == static_cast<size_t>(m_core_info.width * m_core_info.height))
|
if (video_buffer.size() == static_cast<size_t>(m_core_info.width * m_core_info.height))
|
||||||
@ -608,7 +608,7 @@ void GBAWidgetController::GameChanged(const HW::GBA::CoreInfo& info)
|
|||||||
m_widget->GameChanged(info);
|
m_widget->GameChanged(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GBAWidgetController::FrameEnded(std::vector<u32> video_buffer)
|
void GBAWidgetController::FrameEnded(std::span<const u32> video_buffer)
|
||||||
{
|
{
|
||||||
m_widget->SetVideoBuffer(std::move(video_buffer));
|
m_widget->SetVideoBuffer(video_buffer);
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
#include <span>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <string_view>
|
#include <string_view>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
@ -37,7 +38,7 @@ public:
|
|||||||
~GBAWidget();
|
~GBAWidget();
|
||||||
|
|
||||||
void GameChanged(const HW::GBA::CoreInfo& info);
|
void GameChanged(const HW::GBA::CoreInfo& info);
|
||||||
void SetVideoBuffer(std::vector<u32> video_buffer);
|
void SetVideoBuffer(std::span<const u32> video_buffer);
|
||||||
|
|
||||||
void SetVolume(int volume);
|
void SetVolume(int volume);
|
||||||
void VolumeDown();
|
void VolumeDown();
|
||||||
@ -106,7 +107,7 @@ public:
|
|||||||
|
|
||||||
void Create(std::weak_ptr<HW::GBA::Core> core, const HW::GBA::CoreInfo& info);
|
void Create(std::weak_ptr<HW::GBA::Core> core, const HW::GBA::CoreInfo& info);
|
||||||
void GameChanged(const HW::GBA::CoreInfo& info);
|
void GameChanged(const HW::GBA::CoreInfo& info);
|
||||||
void FrameEnded(std::vector<u32> video_buffer);
|
void FrameEnded(std::span<const u32> video_buffer);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
GBAWidget* m_widget{};
|
GBAWidget* m_widget{};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user