DvrVirtualTouchpadClient.cpp revision de1cdaebc9b8fdbc5348e6c07f849b74bacc485d
1#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
46