summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/xorg/xorg_composite.h
blob: e73f1c704a8bd61867e386b4bb7ed674b00d1110 (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
32
33
34
35
36
37
#ifndef XORG_COMPOSITE_H
#define XORG_COMPOSITE_H

#include "xorg_exa.h"

boolean xorg_composite_accelerated(int op,
                                   PicturePtr pSrcPicture,
                                   PicturePtr pMaskPicture,
                                   PicturePtr pDstPicture);

boolean xorg_composite_bind_state(struct exa_context *exa,
                                  int op,
                                  PicturePtr pSrcPicture,
                                  PicturePtr pMaskPicture,
                                  PicturePtr pDstPicture,
                                  struct exa_pixmap_priv *pSrc,
                                  struct exa_pixmap_priv *pMask,
                                  struct exa_pixmap_priv *pDst);

void xorg_composite(struct exa_context *exa,
                    struct exa_pixmap_priv *dst,
                    int srcX, int srcY, int maskX, int maskY,
                    int dstX, int dstY, int width, int height);

boolean xorg_solid_bind_state(struct exa_context *exa,
                              struct exa_pixmap_priv *pixmap,
                              Pixel fg);
void xorg_solid(struct exa_context *exa,
                struct exa_pixmap_priv *pixmap,
                int x0, int y0, int x1, int y1);

void xorg_copy_pixmap(struct exa_context *ctx,
                      struct exa_pixmap_priv *dst, int dx, int dy,
                      struct exa_pixmap_priv *src, int sx, int sy,
                      int width, int height);

#endif