summaryrefslogtreecommitdiff
path: root/src/protocols/PointerWarp.hpp
blob: d1ce0062f48762c4447b4f98b7c7219f7c1d7c4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

#include "WaylandProtocol.hpp"
#include "pointer-warp-v1.hpp"

class CPointerWarpProtocol : public IWaylandProtocol {
  public:
    CPointerWarpProtocol(const wl_interface* iface, const int& ver, const std::string& name);

    virtual void bindManager(wl_client* client, void* data, uint32_t ver, uint32_t id);

  private:
    void destroyManager(CWpPointerWarpV1* manager);

    //
    std::vector<UP<CWpPointerWarpV1>> m_managers;
};

namespace PROTO {
    inline UP<CPointerWarpProtocol> pointerWarp;
};