1#ifndef ANDROID_DVR_VIRTUAL_TOUCHPAD_CLIENT_H 2#define ANDROID_DVR_VIRTUAL_TOUCHPAD_CLIENT_H 3 4#include "VirtualTouchpad.h" 5 6namespace android { 7namespace dvr { 8 9// VirtualTouchpadClient implements a VirtualTouchpad by connecting to 10// a VirtualTouchpadService over Binder. 11// 12class VirtualTouchpadClient : public VirtualTouchpad { 13 public: 14 // VirtualTouchpad implementation: 15 static std::unique_ptr<VirtualTouchpad> Create(); 16 status_t Attach() override; 17 status_t Detach() override; 18 status_t Touch(int touchpad, float x, float y, float pressure) override; 19 status_t ButtonState(int touchpad, int buttons) override; 20 void dumpInternal(String8& result) override; 21 22 protected: 23 VirtualTouchpadClient() {} 24 ~VirtualTouchpadClient() override {} 25 26 private: 27 VirtualTouchpadClient(const VirtualTouchpadClient&) = delete; 28 void operator=(const VirtualTouchpadClient&) = delete; 29}; 30 31} // namespace dvr 32} // namespace android 33 34#endif // ANDROID_DVR_VIRTUAL_TOUCHPAD_CLIENT_H 35