mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-14 06:10:21 +00:00
6c5ae48a05
This adds a GdkColorStates that encodes 2 of the default GdkColorStates and wether their values are premultiplied or not. Neither do the shaders do anything with this information yet, nor do the shaders do anything with it yet, this is just the plumbing.
36 lines
2.4 KiB
C
36 lines
2.4 KiB
C
#pragma once
|
|
|
|
#include "gskgpudeviceprivate.h"
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
#define GSK_TYPE_GL_DEVICE (gsk_gl_device_get_type ())
|
|
|
|
G_DECLARE_FINAL_TYPE (GskGLDevice, gsk_gl_device, GSK, GL_DEVICE, GskGpuDevice)
|
|
|
|
GskGpuDevice * gsk_gl_device_get_for_display (GdkDisplay *display,
|
|
GError **error);
|
|
|
|
void gsk_gl_device_use_program (GskGLDevice *self,
|
|
const GskGpuShaderOpClass *op_class,
|
|
GskGpuColorStates color_states,
|
|
guint32 variation,
|
|
GskGpuShaderClip clip,
|
|
guint n_external_textures);
|
|
|
|
GLuint gsk_gl_device_get_sampler_id (GskGLDevice *self,
|
|
GskGpuSampler sampler);
|
|
|
|
void gsk_gl_device_find_gl_format (GskGLDevice *self,
|
|
GdkMemoryFormat format,
|
|
GskGpuImageFlags required_flags,
|
|
GdkMemoryFormat *out_format,
|
|
GskGpuImageFlags *out_flags,
|
|
GLint *out_gl_internal_format,
|
|
GLint *out_gl_internal_srgb_format,
|
|
GLenum *out_gl_format,
|
|
GLenum *out_gl_type,
|
|
GLint out_swizzle[4]);
|
|
|
|
G_END_DECLS
|