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