summaryrefslogtreecommitdiff
path: root/src/render/pass
diff options
context:
space:
mode:
authorTom Englund <tomenglund26@gmail.com>2025-07-04 09:58:37 +0200
committerVaxry <43317083+vaxerski@users.noreply.github.com>2025-07-07 18:09:34 +0200
commitbb958a9e139d6ae90d45fe360287d33e229f971e (patch)
treebbfe8a1ac10a83ce18291d9deaafa4f98bc9d355 /src/render/pass
parentc75f85098cfdd53744a30ea5dce24b3fd43bd9c1 (diff)
pass: overload TexPass constructor
overload it with a rvalue to allow us to move the data directly avoiding an extra copy. because SRenderData is not trivially copyable.
Diffstat (limited to 'src/render/pass')
-rw-r--r--src/render/pass/TexPassElement.cpp6
-rw-r--r--src/render/pass/TexPassElement.hpp1
2 files changed, 6 insertions, 1 deletions
diff --git a/src/render/pass/TexPassElement.cpp b/src/render/pass/TexPassElement.cpp
index c4b00220..dbf40308 100644
--- a/src/render/pass/TexPassElement.cpp
+++ b/src/render/pass/TexPassElement.cpp
@@ -4,7 +4,11 @@
#include <hyprutils/utils/ScopeGuard.hpp>
using namespace Hyprutils::Utils;
-CTexPassElement::CTexPassElement(const CTexPassElement::SRenderData& data_) : m_data(data_) {
+CTexPassElement::CTexPassElement(const SRenderData& data) : m_data(data) {
+ ;
+}
+
+CTexPassElement::CTexPassElement(CTexPassElement::SRenderData&& data) : m_data(std::move(data)) {
;
}
diff --git a/src/render/pass/TexPassElement.hpp b/src/render/pass/TexPassElement.hpp
index a9206d2d..4257357e 100644
--- a/src/render/pass/TexPassElement.hpp
+++ b/src/render/pass/TexPassElement.hpp
@@ -24,6 +24,7 @@ class CTexPassElement : public IPassElement {
};
CTexPassElement(const SRenderData& data);
+ CTexPassElement(SRenderData&& data);
virtual ~CTexPassElement() = default;
virtual void draw(const CRegion& damage);