mirror of
https://github.com/fltk/fltk.git
synced 2026-05-27 10:57:58 +08:00
Expose elapsed time API (#670)
This commit is contained in:
@@ -470,6 +470,13 @@ public:
|
||||
static void add_check(Fl_Timeout_Handler, void* = 0);
|
||||
static int has_check(Fl_Timeout_Handler, void* = 0);
|
||||
static void remove_check(Fl_Timeout_Handler, void* = 0);
|
||||
|
||||
static Fl_Timestamp now();
|
||||
static double seconds_since(Fl_Timestamp& then);
|
||||
static double seconds_between(Fl_Timestamp& back, Fl_Timestamp& further_back);
|
||||
static long ticks_since(Fl_Timestamp& then);
|
||||
static long ticks_between(Fl_Timestamp& back, Fl_Timestamp& further_back);
|
||||
|
||||
// private
|
||||
static void run_idle();
|
||||
static void run_checks();
|
||||
|
||||
@@ -12,6 +12,9 @@
|
||||
* https://www.fltk.org/bugs.php
|
||||
*/
|
||||
|
||||
#ifndef Fl_Platform_Types_H
|
||||
#define Fl_Platform_Types_H
|
||||
|
||||
/** \file
|
||||
Definitions of platform-dependent types.
|
||||
The exact nature of these types varies with the platform.
|
||||
@@ -62,6 +65,13 @@ typedef opaque FL_SOCKET; /**< socket or file descriptor */
|
||||
*/
|
||||
typedef struct opaque *GLContext;
|
||||
|
||||
/**
|
||||
Platform-specific point in time, used for delta time calculation.
|
||||
\note This type may be a struct. sizeof(Fl_Timestamp) may be different on
|
||||
different platforms. Fl_Timestamp may change with future ABI changes.
|
||||
*/
|
||||
typedef opaque Fl_Timestamp;
|
||||
|
||||
# define FL_COMMAND opaque /**< An alias for FL_CTRL on Windows and X11, or FL_META on MacOS X */
|
||||
# define FL_CONTROL opaque /**< An alias for FL_META on Windows and X11, or FL_CTRL on MacOS X */
|
||||
|
||||
@@ -127,4 +137,15 @@ extern FL_EXPORT int fl_control_modifier();
|
||||
|
||||
#endif /* FL_PLATFORM_TYPES_H */
|
||||
|
||||
// This is currently the same for all platforms, but may change in the future
|
||||
struct Fl_Timestamp_t {
|
||||
long sec;
|
||||
long usec;
|
||||
};
|
||||
|
||||
typedef struct Fl_Timestamp_t Fl_Timestamp;
|
||||
|
||||
#endif /* FL_DOXYGEN */
|
||||
|
||||
#endif /* Fl_Platform_Types_H */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user