1#ifndef SWC_OUTPUT_H
2#define SWC_OUTPUT_H
3
4#include <pixman.h>
5#include <stdint.h>
6#include <wayland-util.h>
7#include <xf86drmMode.h>
8
9struct wl_display;
10
11struct output {
12 struct wl_resource *resource;
13 struct screen *screen;
14
15 char name[24];
16 /* The physical dimensions (in mm) of this output */
17 uint32_t physical_width, physical_height;
18
19 struct wl_array modes;
20 struct mode *preferred_mode;
21
22 pixman_region32_t current_damage, previous_damage;
23
24 /* The DRM connector corresponding to this output */
25 uint32_t connector;
26
27 struct wl_global *global;
28 struct wl_list resources;
29 struct wl_list link;
30};
31
32struct output *
33output_new(drmModeConnector *connector);
34void
35output_destroy(struct output *output);
36
37#endif