]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
Added monkeypatch for time.struct_time dependency of adafruit_gps.
authorCefn Hoile <github.com@cefn.com>
Mon, 26 Feb 2018 19:43:47 +0000 (19:43 +0000)
committerCefn Hoile <github.com@cefn.com>
Mon, 26 Feb 2018 19:43:47 +0000 (19:43 +0000)
src/adafruit_blinka/__init__.py
src/adafruit_blinka/time.py [new file with mode: 0644]

index 06758eed2e529b2bbf38c12c01339f2259b6730f..dfcef6c8d87615b0649c23c1bf77d8e0e3deea3e 100644 (file)
@@ -54,3 +54,8 @@ class Lockable(ContextManaged):
             self._locked = False
         else:
             raise ValueError("Not locked")
+
+def patch_system():
+    import sys
+    from adafruit_blinka import time
+    sys.modules['time'] = time
\ No newline at end of file
diff --git a/src/adafruit_blinka/time.py b/src/adafruit_blinka/time.py
new file mode 100644 (file)
index 0000000..1d7946e
--- /dev/null
@@ -0,0 +1,12 @@
+from time import sleep
+
+from ucollections import namedtuple
+_struct_time = namedtuple("struct_time", ("tm_year", "tm_mon", "tm_mday", "tm_hour", "tm_min", "tm_sec", "tm_wday", "tm_yday", "tm_isdst"))
+
+def marshal_time(tm_year, tm_mon, tm_mday, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=-1, tm_yday=-1, tm_isdst=-1):
+    _struct_time(tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst)
+
+def struct_time(t):
+    return marshal_time(*t)
+
+#TODO implement time.monotonic based on ticks_ms