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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
#ifndef IMPED_H
#define IMPED_H
#include "randrstr.h"
#include "picturestr.h"
extern _X_EXPORT Bool impedSetupScreen(ScreenPtr pScreen);
extern _X_EXPORT Bool impedFinishScreenInit(ScreenPtr pScreen,
pointer pbits,
int xsize,
int ysize,
int dpix,
int dpiy,
int width,
int bpp);
#define impedGetScreenPixmap(s) ((PixmapPtr) (s)->devPrivate)
extern _X_EXPORT PixmapPtr
_impedGetWindowPixmap(WindowPtr pWindow);
extern _X_EXPORT void
_impedSetWindowPixmap(WindowPtr pWindow, PixmapPtr pPixmap);
extern _X_EXPORT Bool
impedCreateGC(GCPtr pGC);
extern _X_EXPORT void
impedAttachUnboundScreen(ScreenPtr pScreen, ScreenPtr new);
extern _X_EXPORT void
impedDetachUnboundScreen(ScreenPtr pScreen, ScreenPtr slave);
extern _X_EXPORT void
impedAttachScreen(ScreenPtr pScreen, ScreenPtr slave);
extern _X_EXPORT void
impedAttachOutputSlave(ScreenPtr pScreen, ScreenPtr slave, int index);
extern _X_EXPORT void
impedAttachOffloadSlave(ScreenPtr pScreen, ScreenPtr slave, int index);
extern _X_EXPORT void
impedDetachOutputSlave(ScreenPtr pScreen, ScreenPtr slave);
extern _X_EXPORT void
impedDetachOffloadSlave(ScreenPtr pScreen, ScreenPtr slave);
extern _X_EXPORT void
impedMigrateOutputSlaves(ScreenPtr pOldMaster, ScreenPtr pNewMaster);
extern _X_EXPORT void
impedCopyNtoN (DrawablePtr pSrcDrawable,
DrawablePtr pDstDrawable,
GCPtr pGC,
BoxPtr pbox,
int nbox,
int dx,
int dy,
Bool reverse,
Bool upsidedown,
Pixel bitplane,
void *closure);
static inline void impedGetDrawableDeltas(DrawablePtr pDrawable, PixmapPtr pPixmap,
int *x_off, int *y_off)
{
*x_off = pDrawable->x;
*y_off = pDrawable->y;
#ifdef COMPOSITE
if (pDrawable->type == DRAWABLE_WINDOW) {
*x_off -= pPixmap->screen_x;
*y_off -= pPixmap->screen_y;
}
#endif
}
/* only used for CopyNtoN */
static inline void impedGetCompositeDeltas(DrawablePtr pDrawable, PixmapPtr pPixmap,
int *x_off, int *y_off)
{
*x_off = 0;
*y_off = 0;
#ifdef COMPOSITE
if (pDrawable->type == DRAWABLE_WINDOW) {
*x_off -= pPixmap->screen_x;
*y_off -= pPixmap->screen_y;
}
#endif
}
extern _X_EXPORT Bool
impedPictureInit (ScreenPtr pScreen, PictFormatPtr formats, int nformats);
extern _X_EXPORT void
impedPictureDuplicate(PicturePtr pPicture, int new_gpu_index);
extern _X_EXPORT int
impedAddScreen(ScreenPtr protocol_master, ScreenPtr new);
extern _X_EXPORT Bool
impedRemoveScreen(ScreenPtr protocol_master, ScreenPtr slave);
extern _X_EXPORT Bool
impedRandR12Init(ScreenPtr pScreen);
Bool impedCheckPixmapBounding(ScreenPtr pScreen,
RRCrtcPtr rr_crtc, int x, int y, int w, int h);
#endif
|