summaryrefslogtreecommitdiff
path: root/common/xv_attribute.h
blob: d051238dc4c51be0b95ab6f99c3b7e71f022e021 (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
#ifndef XV_ATTRIBUTE_H
#define XV_ATTRIBUTE_H

struct xv_attr_data {
	const char *name;
	unsigned id;
	int offset;
	int (*set)(ScrnInfoPtr, const struct xv_attr_data *, INT32, pointer);
	int (*get)(ScrnInfoPtr, const struct xv_attr_data *, INT32 *, pointer);
	void (*init)(ScrnInfoPtr, const struct xv_attr_data *, pointer, void *);
	Atom x_atom;
	XF86AttributePtr attr;
};

int xv_attr_SetPortAttribute(const struct xv_attr_data *attr,
	size_t n_attr, ScrnInfoPtr pScrn, Atom attribute,
	INT32 value, pointer data);

int xv_attr_GetPortAttribute(const struct xv_attr_data *attr,
	size_t n_attr, ScrnInfoPtr pScrn, Atom attribute,
	INT32 *value, pointer data);

Bool xv_attr_init(struct xv_attr_data *attrs, size_t n_attr);

#endif