NuMaker emWin HMI

Committer:
csyang2
Date:
Mon Mar 04 15:47:41 2024 +0800
Revision:
10:c8165817d92a
Parent:
9:1286ec7f3230
Support NuMaker-IoT-M467

Who changed what in which revision?

UserRevisionLine numberNew contents of line
csyang2 1:c0f972361605 1 #ifndef _TSLIB_H_
csyang2 1:c0f972361605 2 #define _TSLIB_H_
csyang2 1:c0f972361605 3 /*
csyang2 1:c0f972361605 4 * tslib/src/tslib.h
csyang2 1:c0f972361605 5 *
csyang2 1:c0f972361605 6 * Copyright (C) 2001 Russell King.
csyang2 1:c0f972361605 7 *
csyang2 1:c0f972361605 8 * This file is placed under the LGPL.
csyang2 1:c0f972361605 9 *
csyang2 1:c0f972361605 10 * $Id: tslib.h,v 1.4 2005/02/26 01:47:23 kergoth Exp $
csyang2 1:c0f972361605 11 *
csyang2 1:c0f972361605 12 * Touch screen library interface definitions.
csyang2 1:c0f972361605 13 */
csyang2 1:c0f972361605 14 #ifdef __cplusplus
csyang2 1:c0f972361605 15 extern "C" {
csyang2 1:c0f972361605 16 #endif /* __cplusplus */
csyang2 9:1286ec7f3230 17 #if 0
csyang2 1:c0f972361605 18 #include <stdarg.h>
csyang2 1:c0f972361605 19 //#include <sys/time.h>
csyang2 1:c0f972361605 20
csyang2 1:c0f972361605 21 #ifdef WIN32
csyang2 1:c0f972361605 22 #define TSIMPORT __declspec(dllimport)
csyang2 1:c0f972361605 23 #define TSEXPORT __declspec(dllexport)
csyang2 1:c0f972361605 24 #define TSLOCAL
csyang2 1:c0f972361605 25 #else
csyang2 1:c0f972361605 26 #define TSIMPORT
csyang2 1:c0f972361605 27 #ifdef GCC_HASCLASSVISIBILITY
csyang2 1:c0f972361605 28 #define TSEXPORT __attribute__ ((visibility("default")))
csyang2 1:c0f972361605 29 #define TSLOCAL __attribute__ ((visibility("hidden")))
csyang2 1:c0f972361605 30 #else
csyang2 1:c0f972361605 31 #define TSEXPORT
csyang2 1:c0f972361605 32 #define TSLOCAL
csyang2 1:c0f972361605 33 #endif
csyang2 1:c0f972361605 34 #endif
csyang2 1:c0f972361605 35
csyang2 1:c0f972361605 36 #ifdef TSLIB_INTERNAL
csyang2 1:c0f972361605 37 #define TSAPI TSEXPORT
csyang2 1:c0f972361605 38 #else
csyang2 1:c0f972361605 39 #define TSAPI TSIMPORT
csyang2 1:c0f972361605 40 #endif // TSLIB_INTERNAL
csyang2 1:c0f972361605 41
csyang2 1:c0f972361605 42 struct tsdev;
csyang2 1:c0f972361605 43
csyang2 1:c0f972361605 44 struct ts_sample
csyang2 1:c0f972361605 45 {
csyang2 1:c0f972361605 46 int x;
csyang2 1:c0f972361605 47 int y;
csyang2 1:c0f972361605 48 unsigned int pressure;
csyang2 1:c0f972361605 49 // struct timeval tv;
csyang2 1:c0f972361605 50 };
csyang2 1:c0f972361605 51
csyang2 1:c0f972361605 52 /*
csyang2 1:c0f972361605 53 * Close the touchscreen device, free all resources.
csyang2 1:c0f972361605 54 */
csyang2 1:c0f972361605 55 TSAPI int ts_close(struct tsdev *);
csyang2 1:c0f972361605 56
csyang2 1:c0f972361605 57 /*
csyang2 1:c0f972361605 58 * Configure the touchscreen device.
csyang2 1:c0f972361605 59 */
csyang2 1:c0f972361605 60 TSAPI int ts_config(struct tsdev *);
csyang2 1:c0f972361605 61
csyang2 1:c0f972361605 62 /*
csyang2 1:c0f972361605 63 * Change this hook to point to your custom error handling function.
csyang2 1:c0f972361605 64 */
csyang2 1:c0f972361605 65 extern TSAPI int (*ts_error_fn)(const char *fmt, va_list ap);
csyang2 1:c0f972361605 66
csyang2 1:c0f972361605 67 /*
csyang2 1:c0f972361605 68 * Returns the file descriptor in use for the touchscreen device.
csyang2 1:c0f972361605 69 */
csyang2 1:c0f972361605 70 TSAPI int ts_fd(struct tsdev *);
csyang2 1:c0f972361605 71
csyang2 1:c0f972361605 72 /*
csyang2 1:c0f972361605 73 * Load a filter/scaling module
csyang2 1:c0f972361605 74 */
csyang2 1:c0f972361605 75 TSAPI int ts_load_module(struct tsdev *, const char *mod, const char *params);
csyang2 1:c0f972361605 76
csyang2 1:c0f972361605 77 /*
csyang2 1:c0f972361605 78 * Open the touchscreen device.
csyang2 1:c0f972361605 79 */
csyang2 1:c0f972361605 80 TSAPI struct tsdev *ts_open(const char *dev_name, int nonblock);
csyang2 1:c0f972361605 81
csyang2 1:c0f972361605 82 /*
csyang2 1:c0f972361605 83 * Return a scaled touchscreen sample.
csyang2 1:c0f972361605 84 */
csyang2 1:c0f972361605 85 TSAPI int ts_read(struct tsdev *, struct ts_sample *, int);
csyang2 1:c0f972361605 86
csyang2 1:c0f972361605 87 /*
csyang2 1:c0f972361605 88 * Returns a raw, unscaled sample from the touchscreen.
csyang2 1:c0f972361605 89 */
csyang2 1:c0f972361605 90 TSAPI int ts_read_raw(struct tsdev *, struct ts_sample *, int);
csyang2 1:c0f972361605 91
csyang2 1:c0f972361605 92 int ts_calibrate(int xsize, int ysize);
csyang2 1:c0f972361605 93
csyang2 1:c0f972361605 94 int ts_phy2log(int *sumx, int *sumy);
csyang2 9:1286ec7f3230 95 #endif
csyang2 1:c0f972361605 96 #ifdef __cplusplus
csyang2 1:c0f972361605 97 }
csyang2 1:c0f972361605 98 #endif /* __cplusplus */
csyang2 1:c0f972361605 99 #endif /* _TSLIB_H_ */