]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/adafruit_blinka/microcontroller/nova/__init__.py
Add BeagleBone AI Support
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / nova / __init__.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..8ab7ce09e52ec6c9a2d0e6d7772dc84aef511be7 100644 (file)
@@ -0,0 +1,31 @@
+"""Generic Connection class for Binho Nova to keep track of connection"""
+
+
+class Connection:
+    """Connection class"""
+
+    __instance = None
+
+    @staticmethod
+    def getInstance():
+        """ Static access method. """
+        if Connection.__instance is None:
+            Connection()
+        return Connection.__instance
+
+    def __init__(self):
+        """ Virtually private constructor. """
+        if Connection.__instance is not None:
+            raise Exception("This class is a singleton!")
+
+        # pylint: disable=import-outside-toplevel
+        from binhoHostAdapter import binhoHostAdapter
+        from binhoHostAdapter import binhoUtilities
+
+        # pylint: enable=import-outside-toplevel
+        devices = binhoUtilities.listAvailableDevices()
+
+        if len(devices) > 0:
+            Connection.__instance = binhoHostAdapter.binhoHostAdapter(devices[0])
+        else:
+            raise RuntimeError("No Binho Nova found!")