def _writeToSD(self, device): for node in DepthFirstIterator(self.getController().getScene().getRoot()): if type(node) is not SceneNode or not node.getMeshData(): continue try: path = self.getStorageDevice("LocalFileStorage").getRemovableDrives()[device] except KeyError: Logger.log("e", "Tried to write to unknown SD card %s", device) return filename = os.path.join(path, node.getName()[0:node.getName().rfind(".")] + ".gcode") job = WriteMeshJob(filename, node.getMeshData()) job._sdcard = device job.start() job.finished.connect(self._onWriteToSDFinished) return