1 #include "VirtualTouchpadClient.h" 2 #include "dvr/virtual_touchpad_client.h" 3 4 struct DvrVirtualTouchpad {}; 5 6 #ifdef __cplusplus 7 extern "C" { 8 #endif 9 10 namespace { 11 android::dvr::VirtualTouchpad* FromC(DvrVirtualTouchpad* client) { 12 return reinterpret_cast<android::dvr::VirtualTouchpad*>(client); 13 } 14 } // namespace 15 16 DvrVirtualTouchpad* dvrVirtualTouchpadCreate() { 17 return reinterpret_cast<DvrVirtualTouchpad*>( 18 android::dvr::VirtualTouchpadClient::Create().release()); 19 } 20 21 void dvrVirtualTouchpadDestroy(DvrVirtualTouchpad* client) { 22 delete FromC(client); 23 } 24 25 int dvrVirtualTouchpadAttach(DvrVirtualTouchpad* client) { 26 return FromC(client)->Attach(); 27 } 28 29 int dvrVirtualTouchpadDetach(DvrVirtualTouchpad* client) { 30 return FromC(client)->Detach(); 31 } 32 33 int dvrVirtualTouchpadTouch(DvrVirtualTouchpad* client, int touchpad, float x, 34 float y, float pressure) { 35 return FromC(client)->Touch(touchpad, x, y, pressure); 36 } 37 38 int dvrVirtualTouchpadButtonState(DvrVirtualTouchpad* client, int touchpad, 39 int buttons) { 40 return FromC(client)->ButtonState(touchpad, buttons); 41 } 42 43 int dvrVirtualTouchpadScroll(DvrVirtualTouchpad* client, int touchpad, float x, 44 float y) { 45 return FromC(client)->Scroll(touchpad, x, y); 46 } 47 48 #ifdef __cplusplus 49 } // extern "C" 50 #endif 51