| 812 | } |
| 813 | |
| 814 | class Events final : public RefCntIface<IEventsImpl<Events, CheckStatusWrapper> > |
| 815 | { |
| 816 | public: |
| 817 | // IEvents implementation |
| 818 | int release() override; |
| 819 | void cancel(CheckStatusWrapper* status) override; |
| 820 | void deprecatedCancel(CheckStatusWrapper* status) override; |
| 821 | |
| 822 | public: |
| 823 | Events(Rvnt* handle) |
| 824 | : rvnt(handle), rdb(rvnt->rvnt_rdb) |
| 825 | { |
| 826 | rvnt->rvnt_self = &rvnt; |
| 827 | } |
| 828 | |
| 829 | private: |
| 830 | void freeClientData(CheckStatusWrapper* status, bool force = false); |
| 831 | void internalCancel(CheckStatusWrapper* status); |
| 832 | |
| 833 | Rvnt* rvnt; |
| 834 | Rdb* rdb; |
| 835 | }; |
| 836 | |
| 837 | |
| 838 | int Events::release() |