chiark / gitweb /
674b86aec465ba5f12fa1c93c8dd2b8c41c721b0
[cura.git] / Cura / util / printerConnection / printerConnectionManager.py
1 __copyright__ = "Copyright (C) 2013 David Braam - Released under terms of the AGPLv3 License"
2
3 from Cura.util import version
4 from Cura.util.printerConnection import dummyConnection
5 from Cura.util.printerConnection import doodle3dConnect
6
7 class PrinterConnectionManager(object):
8         def __init__(self):
9                 self._groupList = []
10                 if version.isDevVersion():
11                         self._groupList.append(dummyConnection.dummyConnectionGroup())
12                 #self._groupList.append(doodle3dConnect.doodle3dConnectionGroup())
13
14                 #Sort the connections by highest priority first.
15                 self._groupList.sort(reverse=True)
16
17         #Return the highest priority available connection.
18         def getAvailableGroup(self):
19                 for g in self._groupList:
20                         if len(g.getAvailableConnections()) > 0:
21                                 return g
22                 return None
23
24         #Return all available connections.
25         def getAvailableConnections(self):
26                 ret = []
27                 for e in self._groupList:
28                         ret += e.getAvailableConnections()
29                 return ret