summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2014-11-26 16:29:41 (GMT)
committer Vincent Sanders <vince@kyllikki.org>2014-11-26 16:29:41 (GMT)
commit2633e6f22b3de1030da5e65d5128672324ac9565 (patch)
treecdc27a199bab9e4806dbddc8bcbd547f1440ef0e
parentad940f15c9754d415e2c10b174a3a8d7ed34db4d (diff)
downloadlibnsutils-2633e6f22b3de1030da5e65d5128672324ac9565.tar.gz
libnsutils-2633e6f22b3de1030da5e65d5128672324ac9565.tar.bz2
add initial monotonic timer API
-rw-r--r--include/nsutils/time.h31
-rw-r--r--src/Makefile2
-rw-r--r--src/time.c25
3 files changed, 57 insertions, 1 deletions
diff --git a/include/nsutils/time.h b/include/nsutils/time.h
new file mode 100644
index 0000000..e07a670
--- a/dev/null
+++ b/include/nsutils/time.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright 2014 Vincent Sanders <vince@netsurf-browser.org>
+ *
+ * This file is part of libnsutils.
+ *
+ * Licensed under the MIT License,
+ * http://www.opensource.org/licenses/mit-license.php
+ */
+
+/**
+ * \file
+ * Base64 encoding and decoding interface.
+ */
+
+#ifndef NSUTILS_TIME_H_
+#define NSUTILS_TIME_H_
+
+#include <nsutils/errors.h>
+
+/**
+ * Get a monotonically incrementing number of milliseconds.
+ *
+ * Obtain a count of elapsed time in milliseconds. Unlike gettimeofday this
+ * will continue linearly across time setting and not go backwards,
+ *
+ * \param current The current value of the counter.
+ * \return NSERROR_OK on success else error code.
+ */
+nserror nsu_nsu_getmonotonic_ms(uint64_t *current);
+
+#endif
diff --git a/src/Makefile b/src/Makefile
index c5e0cbe..28bfc5f 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -1,3 +1,3 @@
-DIR_SOURCES := base64.c
+DIR_SOURCES := base64.c time.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/time.c b/src/time.c
new file mode 100644
index 0000000..c0a5dff
--- a/dev/null
+++ b/src/time.c
@@ -0,0 +1,25 @@
+/*
+ * Copyright 2014 Vincent Sanders <vince@netsurf-browser.org>
+ *
+ * This file is part of libnsutils.
+ *
+ * Licensed under the MIT License,
+ * http://www.opensource.org/licenses/mit-license.php
+ */
+
+/**
+ * \file
+ * Time operation implementation
+ */
+
+#include <stdint.h>
+#include <stdlib.h>
+#include <stdbool.h>
+#include <string.h>
+
+#include "nsutils/time.h"
+
+nserror nsu_nsu_getmonotonic_ms(uint64_t *current)
+{
+ return NSERROR_NOT_IMPLEMENTED;
+}