19 #ifndef MIR_CLIENT_COOKIE_H 20 #define MIR_CLIENT_COOKIE_H 22 #include <mir_toolkit/mir_cookie.h> 34 explicit Cookie(MirCookie
const* cookie) : self{cookie, deleter} {}
36 operator MirCookie
const*()
const {
return self.get(); }
38 void reset() {
self.reset(); }
39 void reset(MirCookie
const* cookie) {
self.reset(cookie, deleter); }
41 friend void mir_cookie_release(Cookie
const&) =
delete;
44 static void deleter(MirCookie
const* cookie) { mir_cookie_release(cookie); }
45 std::shared_ptr<MirCookie const>
self;
50 #endif //MIR_CLIENT_COOKIE_H