#ifndef EXAMPLE_COMMON_H
#define EXAMPLE_COMMON_H

#include <stdbool.h>
#include <stdint.h>
#include <xf86drmMode.h>

struct dumb_fb {
	uint32_t format;
	uint32_t width, height, stride, size;
	uint32_t handle;
	uint32_t id;
};

drmModeConnector *pick_connector(int drm_fd, drmModeRes *drm_res);
drmModeCrtc *pick_crtc(int drm_fd, drmModeRes *drm_res,
		       drmModeConnector *connector);
void disable_all_crtcs_except(int drm_fd, drmModeRes *drm_res, uint32_t crtc_id);

bool dumb_fb_init(struct dumb_fb *fb, int drm_fd, uint32_t format,
		  uint32_t width, uint32_t height);
void *dumb_fb_map(struct dumb_fb *fb, int drm_fd);
void dumb_fb_fill(struct dumb_fb *fb, int drm_fd, uint32_t color);

#endif
