// This file was generated by qtwaylandscanner
// source file is /usr/share/plasma-wayland-protocols/kde-output-device-v2.xml

#include "qwayland-kde-output-device-v2.h"

QT_BEGIN_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_GCC("-Wmissing-field-initializers")

namespace QtWayland {

static inline void *wlRegistryBind(struct ::wl_registry *registry, uint32_t name, const struct ::wl_interface *interface, uint32_t version)
{
    const uint32_t bindOpCode = 0;
#if (WAYLAND_VERSION_MAJOR == 1 && WAYLAND_VERSION_MINOR > 10) || WAYLAND_VERSION_MAJOR > 1
    return (void *) wl_proxy_marshal_constructor_versioned((struct wl_proxy *) registry,
        bindOpCode, interface, version, name, interface->name, version, nullptr);
#else
    return (void *) wl_proxy_marshal_constructor((struct wl_proxy *) registry,
        bindOpCode, interface, name, interface->name, version, nullptr);
#endif
}

    kde_output_device_v2::kde_output_device_v2(struct ::wl_registry *registry, int id, int version)
    {
        init(registry, id, version);
    }

    kde_output_device_v2::kde_output_device_v2(struct ::kde_output_device_v2 *obj)
        : m_kde_output_device_v2(obj)
    {
        init_listener();
    }

    kde_output_device_v2::kde_output_device_v2()
        : m_kde_output_device_v2(nullptr)
    {
    }

    kde_output_device_v2::~kde_output_device_v2()
    {
    }

    void kde_output_device_v2::init(struct ::wl_registry *registry, int id, int version)
    {
        m_kde_output_device_v2 = static_cast<struct ::kde_output_device_v2 *>(wlRegistryBind(registry, id, &kde_output_device_v2_interface, version));
        init_listener();
    }

    void kde_output_device_v2::init(struct ::kde_output_device_v2 *obj)
    {
        m_kde_output_device_v2 = obj;
        init_listener();
    }

    kde_output_device_v2 *kde_output_device_v2::fromObject(struct ::kde_output_device_v2 *object)
    {
        if (wl_proxy_get_listener((struct ::wl_proxy *)object) != (void *)&m_kde_output_device_v2_listener)
            return nullptr;
        return static_cast<kde_output_device_v2 *>(kde_output_device_v2_get_user_data(object));
    }

    bool kde_output_device_v2::isInitialized() const
    {
        return m_kde_output_device_v2 != nullptr;
    }

    const struct wl_interface *kde_output_device_v2::interface()
    {
        return &::kde_output_device_v2_interface;
    }

    void kde_output_device_v2::kde_output_device_v2_geometry(int32_t , int32_t , int32_t , int32_t , int32_t , const QString &, const QString &, int32_t )
    {
    }

    void kde_output_device_v2::handle_geometry(
        void *data,
        struct ::kde_output_device_v2 *object,
        int32_t x,
        int32_t y,
        int32_t physical_width,
        int32_t physical_height,
        int32_t subpixel,
        const char *make,
        const char *model,
        int32_t transform)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_geometry(
            x,
            y,
            physical_width,
            physical_height,
            subpixel,
            QString::fromUtf8(make),
            QString::fromUtf8(model),
            transform);
    }

    void kde_output_device_v2::kde_output_device_v2_current_mode(struct ::kde_output_device_mode_v2 *)
    {
    }

    void kde_output_device_v2::handle_current_mode(
        void *data,
        struct ::kde_output_device_v2 *object,
        struct ::kde_output_device_mode_v2 *mode)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_current_mode(
            mode);
    }

    void kde_output_device_v2::kde_output_device_v2_mode(struct ::kde_output_device_mode_v2 *)
    {
    }

    void kde_output_device_v2::handle_mode(
        void *data,
        struct ::kde_output_device_v2 *object,
        struct ::kde_output_device_mode_v2 *mode)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_mode(
            mode);
    }

    void kde_output_device_v2::kde_output_device_v2_done()
    {
    }

    void kde_output_device_v2::handle_done(
        void *data,
        struct ::kde_output_device_v2 *object)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_done();
    }

    void kde_output_device_v2::kde_output_device_v2_scale(wl_fixed_t )
    {
    }

    void kde_output_device_v2::handle_scale(
        void *data,
        struct ::kde_output_device_v2 *object,
        wl_fixed_t factor)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_scale(
            factor);
    }

    void kde_output_device_v2::kde_output_device_v2_edid(const QString &)
    {
    }

    void kde_output_device_v2::handle_edid(
        void *data,
        struct ::kde_output_device_v2 *object,
        const char *raw)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_edid(
            QString::fromUtf8(raw));
    }

    void kde_output_device_v2::kde_output_device_v2_enabled(int32_t )
    {
    }

    void kde_output_device_v2::handle_enabled(
        void *data,
        struct ::kde_output_device_v2 *object,
        int32_t enabled)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_enabled(
            enabled);
    }

    void kde_output_device_v2::kde_output_device_v2_uuid(const QString &)
    {
    }

    void kde_output_device_v2::handle_uuid(
        void *data,
        struct ::kde_output_device_v2 *object,
        const char *uuid)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_uuid(
            QString::fromUtf8(uuid));
    }

    void kde_output_device_v2::kde_output_device_v2_serial_number(const QString &)
    {
    }

    void kde_output_device_v2::handle_serial_number(
        void *data,
        struct ::kde_output_device_v2 *object,
        const char *serialNumber)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_serial_number(
            QString::fromUtf8(serialNumber));
    }

    void kde_output_device_v2::kde_output_device_v2_eisa_id(const QString &)
    {
    }

    void kde_output_device_v2::handle_eisa_id(
        void *data,
        struct ::kde_output_device_v2 *object,
        const char *eisaId)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_eisa_id(
            QString::fromUtf8(eisaId));
    }

    void kde_output_device_v2::kde_output_device_v2_capabilities(uint32_t )
    {
    }

    void kde_output_device_v2::handle_capabilities(
        void *data,
        struct ::kde_output_device_v2 *object,
        uint32_t flags)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_capabilities(
            flags);
    }

    void kde_output_device_v2::kde_output_device_v2_overscan(uint32_t )
    {
    }

    void kde_output_device_v2::handle_overscan(
        void *data,
        struct ::kde_output_device_v2 *object,
        uint32_t overscan)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_overscan(
            overscan);
    }

    void kde_output_device_v2::kde_output_device_v2_vrr_policy(uint32_t )
    {
    }

    void kde_output_device_v2::handle_vrr_policy(
        void *data,
        struct ::kde_output_device_v2 *object,
        uint32_t vrr_policy)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_vrr_policy(
            vrr_policy);
    }

    void kde_output_device_v2::kde_output_device_v2_rgb_range(uint32_t )
    {
    }

    void kde_output_device_v2::handle_rgb_range(
        void *data,
        struct ::kde_output_device_v2 *object,
        uint32_t rgb_range)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_rgb_range(
            rgb_range);
    }

    void kde_output_device_v2::kde_output_device_v2_name(const QString &)
    {
    }

    void kde_output_device_v2::handle_name(
        void *data,
        struct ::kde_output_device_v2 *object,
        const char *name)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_v2 *>(data)->kde_output_device_v2_name(
            QString::fromUtf8(name));
    }

    const struct kde_output_device_v2_listener kde_output_device_v2::m_kde_output_device_v2_listener = {
        kde_output_device_v2::handle_geometry,
        kde_output_device_v2::handle_current_mode,
        kde_output_device_v2::handle_mode,
        kde_output_device_v2::handle_done,
        kde_output_device_v2::handle_scale,
        kde_output_device_v2::handle_edid,
        kde_output_device_v2::handle_enabled,
        kde_output_device_v2::handle_uuid,
        kde_output_device_v2::handle_serial_number,
        kde_output_device_v2::handle_eisa_id,
        kde_output_device_v2::handle_capabilities,
        kde_output_device_v2::handle_overscan,
        kde_output_device_v2::handle_vrr_policy,
        kde_output_device_v2::handle_rgb_range,
        kde_output_device_v2::handle_name,
    };

    void kde_output_device_v2::init_listener()
    {
        kde_output_device_v2_add_listener(m_kde_output_device_v2, &m_kde_output_device_v2_listener, this);
    }

    kde_output_device_mode_v2::kde_output_device_mode_v2(struct ::wl_registry *registry, int id, int version)
    {
        init(registry, id, version);
    }

    kde_output_device_mode_v2::kde_output_device_mode_v2(struct ::kde_output_device_mode_v2 *obj)
        : m_kde_output_device_mode_v2(obj)
    {
        init_listener();
    }

    kde_output_device_mode_v2::kde_output_device_mode_v2()
        : m_kde_output_device_mode_v2(nullptr)
    {
    }

    kde_output_device_mode_v2::~kde_output_device_mode_v2()
    {
    }

    void kde_output_device_mode_v2::init(struct ::wl_registry *registry, int id, int version)
    {
        m_kde_output_device_mode_v2 = static_cast<struct ::kde_output_device_mode_v2 *>(wlRegistryBind(registry, id, &kde_output_device_mode_v2_interface, version));
        init_listener();
    }

    void kde_output_device_mode_v2::init(struct ::kde_output_device_mode_v2 *obj)
    {
        m_kde_output_device_mode_v2 = obj;
        init_listener();
    }

    kde_output_device_mode_v2 *kde_output_device_mode_v2::fromObject(struct ::kde_output_device_mode_v2 *object)
    {
        if (wl_proxy_get_listener((struct ::wl_proxy *)object) != (void *)&m_kde_output_device_mode_v2_listener)
            return nullptr;
        return static_cast<kde_output_device_mode_v2 *>(kde_output_device_mode_v2_get_user_data(object));
    }

    bool kde_output_device_mode_v2::isInitialized() const
    {
        return m_kde_output_device_mode_v2 != nullptr;
    }

    const struct wl_interface *kde_output_device_mode_v2::interface()
    {
        return &::kde_output_device_mode_v2_interface;
    }

    void kde_output_device_mode_v2::kde_output_device_mode_v2_size(int32_t , int32_t )
    {
    }

    void kde_output_device_mode_v2::handle_size(
        void *data,
        struct ::kde_output_device_mode_v2 *object,
        int32_t width,
        int32_t height)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_mode_v2 *>(data)->kde_output_device_mode_v2_size(
            width,
            height);
    }

    void kde_output_device_mode_v2::kde_output_device_mode_v2_refresh(int32_t )
    {
    }

    void kde_output_device_mode_v2::handle_refresh(
        void *data,
        struct ::kde_output_device_mode_v2 *object,
        int32_t refresh)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_mode_v2 *>(data)->kde_output_device_mode_v2_refresh(
            refresh);
    }

    void kde_output_device_mode_v2::kde_output_device_mode_v2_preferred()
    {
    }

    void kde_output_device_mode_v2::handle_preferred(
        void *data,
        struct ::kde_output_device_mode_v2 *object)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_mode_v2 *>(data)->kde_output_device_mode_v2_preferred();
    }

    void kde_output_device_mode_v2::kde_output_device_mode_v2_removed()
    {
    }

    void kde_output_device_mode_v2::handle_removed(
        void *data,
        struct ::kde_output_device_mode_v2 *object)
    {
        Q_UNUSED(object);
        static_cast<kde_output_device_mode_v2 *>(data)->kde_output_device_mode_v2_removed();
    }

    const struct kde_output_device_mode_v2_listener kde_output_device_mode_v2::m_kde_output_device_mode_v2_listener = {
        kde_output_device_mode_v2::handle_size,
        kde_output_device_mode_v2::handle_refresh,
        kde_output_device_mode_v2::handle_preferred,
        kde_output_device_mode_v2::handle_removed,
    };

    void kde_output_device_mode_v2::init_listener()
    {
        kde_output_device_mode_v2_add_listener(m_kde_output_device_mode_v2, &m_kde_output_device_mode_v2_listener, this);
    }
}

QT_WARNING_POP
QT_END_NAMESPACE
