diff options
Diffstat (limited to 'libs/ardour/globals.cc')
-rw-r--r-- | libs/ardour/globals.cc | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libs/ardour/globals.cc b/libs/ardour/globals.cc index fbce336283..89edc66e84 100644 --- a/libs/ardour/globals.cc +++ b/libs/ardour/globals.cc @@ -29,6 +29,7 @@ #include <unistd.h> #include <fcntl.h> #include <errno.h> +#include <time.h> #ifdef WINDOWS_VST_SUPPORT #include <fst.h> @@ -535,3 +536,18 @@ ARDOUR::get_available_sync_options () return ret; } + +/** Return a monotonic value for the number of microseconds that have elapsed + * since an arbitrary zero origin. + */ + +microseconds_t +ARDOUR::get_microseconds () +{ + struct timespec ts; + if (clock_gettime (CLOCK_MONOTONIC, &ts) != 0) { + /* EEEK! */ + return 0; + } + return (microseconds_t) ts.tv_sec * 1000000 + (ts.tv_nsec/1000); +} |