Untitled

 avatar
unknown
plain_text
a month ago
983 B
1
Indexable
#ifndef WLR_BACKEND_RDP_H
#define WLR_BACKEND_RDP_H

#include <wayland-server-core.h>
#include <wlr/backend.h>
#include <wlr/backend/session.h>
#include <wlr/render/allocator.h>
#include "rdprail.h"

// Forward declarations
struct wlr_rdp_surface;

// Function declarations
struct wlr_backend *wlr_rdp_backend_create(
    struct wl_display *display,
    struct wlr_session *session, 
    void *redir_ctx
);

struct wlr_rdp_backend *get_rdp_backend_from_backend(
    struct wlr_backend *backend
);

struct wlr_rdp_backend {
    struct wlr_backend base;
    GfxRedirServerContext *redir_ctx;
    struct wl_display *display;
    struct wlr_session *session;
    struct wlr_allocator *allocator;
    struct {
        struct wl_signal destroy;
        struct wl_signal new_output;
        struct wl_signal new_input;
    } events;
    struct wl_list outputs;  // wlr_rdp_output::link
    struct wl_list surfaces; // wlr_rdp_surface::link
    bool started;
};

#endif // WLR_BACKEND_RDP_H
Leave a Comment