summaryrefslogtreecommitdiff
path: root/randr/randrstr.h
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2008-03-15 00:36:45 -0700
committerKeith Packard <keithp@keithp.com>2008-11-24 13:24:36 -0800
commitf50349e1930e620cacdf27a6f8585fcb9cb5199a (patch)
treed72ced5c7796a7143f8ef56f0b99f5429f486113 /randr/randrstr.h
parentacda790e430b2a18c7c35379f6e538f3d01ff221 (diff)
[RANDR] Support filters in CRTC transforms.
Create new RRTransform datatype to hold all of the transform related information, use that in lots of places to pass filters around.
Diffstat (limited to 'randr/randrstr.h')
-rw-r--r--randr/randrstr.h27
1 files changed, 18 insertions, 9 deletions
diff --git a/randr/randrstr.h b/randr/randrstr.h
index 320e9f742..cdaebe9bb 100644
--- a/randr/randrstr.h
+++ b/randr/randrstr.h
@@ -78,6 +78,7 @@ typedef struct _rrPropertyValue RRPropertyValueRec, *RRPropertyValuePtr;
typedef struct _rrProperty RRPropertyRec, *RRPropertyPtr;
typedef struct _rrCrtc RRCrtcRec, *RRCrtcPtr;
typedef struct _rrOutput RROutputRec, *RROutputPtr;
+typedef struct _rrTransform RRTransformRec, *RRTransformPtr;
struct _rrMode {
int refcnt;
@@ -104,6 +105,14 @@ struct _rrProperty {
RRPropertyValueRec current, pending;
};
+struct _rrTransform {
+ PictTransform transform;
+ PictTransform inverse;
+ PictFilterPtr filter;
+ xFixed *params;
+ int nparams;
+};
+
struct _rrCrtc {
RRCrtc id;
ScreenPtr pScreen;
@@ -119,10 +128,8 @@ struct _rrCrtc {
CARD16 *gammaBlue;
CARD16 *gammaGreen;
void *devPrivate;
- PictTransform client_pending_transform;
- PictTransform client_pending_inverse;
- PictTransform client_current_transform;
- PictTransform client_current_inverse;
+ RRTransformRec client_pending_transform;
+ RRTransformRec client_current_transform;
PictTransform transform;
PictTransform inverse;
};
@@ -612,10 +619,8 @@ RRComputeTransform (RRModePtr mode,
/*
* Return crtc transform
*/
-Bool
-RRCrtcGetTransform (RRCrtcPtr crtc,
- PictTransformPtr crtc_to_fb,
- PictTransformPtr fb_to_crtc);
+RRTransformPtr
+RRCrtcGetTransform (RRCrtcPtr crtc);
/*
* Mark the pending transform as current
@@ -643,7 +648,11 @@ RRCrtcDestroy (RRCrtcPtr crtc);
int
RRCrtcTransformSet (RRCrtcPtr crtc,
PictTransformPtr transform,
- PictTransformPtr inverse);
+ PictTransformPtr inverse,
+ char *filter,
+ int filter_len,
+ xFixed *params,
+ int nparams);
/*
* Initialize crtc type