summaryrefslogtreecommitdiff
path: root/gsk/gl/gskglshadowcacheprivate.h
blob: 6623f1623595ec3c7c3be6379177b912b43d5259 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31


#ifndef __GSK_GL_SHADOW_CACHE_H__
#define __GSK_GL_SHADOW_CACHE_H__

#include <glib.h>
#include "gskgldriverprivate.h"
#include "gskroundedrect.h"

typedef struct
{
  GArray *textures;
} GskGLShadowCache;


void gsk_gl_shadow_cache_init           (GskGLShadowCache     *self);
void gsk_gl_shadow_cache_free           (GskGLShadowCache     *self,
                                         GskGLDriver          *gl_driver);
void gsk_gl_shadow_cache_begin_frame    (GskGLShadowCache     *self,
                                         GskGLDriver          *gl_driver);
int  gsk_gl_shadow_cache_get_texture_id (GskGLShadowCache     *self,
                                         GskGLDriver          *gl_driver,
                                         const GskRoundedRect *shadow_rect,
                                         float                 blur_radius);
void gsk_gl_shadow_cache_commit         (GskGLShadowCache     *self,
                                         const GskRoundedRect *shadow_rect,
                                         float                 blur_radius,
                                         int                   texture_id);


#endif