summaryrefslogtreecommitdiff
path: root/src/render/Texture.hpp
diff options
context:
space:
mode:
authorVaxry <43317083+vaxerski@users.noreply.github.com>2026-03-04 19:50:28 +0000
committerGitHub <noreply@github.com>2026-03-04 19:50:28 +0000
commit10754745a97c99449ef40db58bd425f5a91f9993 (patch)
tree8aa9f57bcfb2157b9fbdc387c9021db6e6a38e46 /src/render/Texture.hpp
parent8271cfc97b76d573f9122032d6cf5db256d63470 (diff)
render/cm: add ICC profile pipeline (#12711)
Adds an ICC profile pipeline, loading via config and applying via 3D LUTs.
Diffstat (limited to 'src/render/Texture.hpp')
-rw-r--r--src/render/Texture.hpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/render/Texture.hpp b/src/render/Texture.hpp
index c2e9b2c3..a5806e26 100644
--- a/src/render/Texture.hpp
+++ b/src/render/Texture.hpp
@@ -3,6 +3,7 @@
#include "../defines.hpp"
#include <aquamarine/buffer/Buffer.hpp>
#include <hyprutils/math/Misc.hpp>
+#include <span>
class IHLBuffer;
HYPRUTILS_FORWARD(Math, CRegion);
@@ -11,6 +12,7 @@ enum eTextureType : int8_t {
TEXTURE_INVALID = -1, // Invalid
TEXTURE_RGBA = 0, // 4 channels
TEXTURE_RGBX, // discard A
+ TEXTURE_3D_LUT, // 3D LUT
TEXTURE_EXTERNAL, // EGLImage
};
@@ -24,6 +26,7 @@ class CTexture {
CTexture(const CTexture&) = delete;
CTexture(uint32_t drmFormat, uint8_t* pixels, uint32_t stride, const Vector2D& size, bool keepDataCopy = false);
+ CTexture(std::span<const float> lut3D, size_t N);
CTexture(const SP<Aquamarine::IBuffer> buffer, bool keepDataCopy = false);
// this ctor takes ownership of the eglImage.