klippy: separate initial config file load into load_config() method
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
7e7e607e3f
commit
6ebb1a68cb
|
@ -32,19 +32,31 @@ class ConfigWrapper:
|
||||||
|
|
||||||
class Printer:
|
class Printer:
|
||||||
def __init__(self, conffile, input_fd, is_fileinput=False):
|
def __init__(self, conffile, input_fd, is_fileinput=False):
|
||||||
self.fileconfig = ConfigParser.RawConfigParser()
|
self.conffile = conffile
|
||||||
self.fileconfig.read(conffile)
|
|
||||||
self.reactor = reactor.Reactor()
|
self.reactor = reactor.Reactor()
|
||||||
|
|
||||||
self.gcode = gcode.GCodeParser(self, input_fd, is_fileinput)
|
self.gcode = gcode.GCodeParser(self, input_fd, is_fileinput)
|
||||||
self.mcu = mcu.MCU(self, ConfigWrapper(self, 'mcu'))
|
self.stats_timer = self.reactor.register_timer(self.stats)
|
||||||
self.stats_timer = self.reactor.register_timer(
|
|
||||||
self.stats, self.reactor.NOW)
|
|
||||||
self.connect_timer = self.reactor.register_timer(
|
self.connect_timer = self.reactor.register_timer(
|
||||||
self.connect, self.reactor.NOW)
|
self.connect, self.reactor.NOW)
|
||||||
self.debugoutput = self.dictionary = None
|
self.debugoutput = self.dictionary = None
|
||||||
|
self.fileconfig = None
|
||||||
|
self.mcu = None
|
||||||
self.objects = {}
|
self.objects = {}
|
||||||
|
def set_fileoutput(self, debugoutput, dictionary):
|
||||||
|
self.debugoutput = debugoutput
|
||||||
|
self.dictionary = dictionary
|
||||||
|
def stats(self, eventtime):
|
||||||
|
out = []
|
||||||
|
out.append(self.gcode.stats(eventtime))
|
||||||
|
toolhead = self.objects.get('toolhead')
|
||||||
|
out.append(toolhead.stats(eventtime))
|
||||||
|
out.append(self.mcu.stats(eventtime))
|
||||||
|
logging.info("Stats %.0f: %s" % (eventtime, ' '.join(out)))
|
||||||
|
return eventtime + 1.
|
||||||
|
def load_config(self):
|
||||||
|
self.fileconfig = ConfigParser.RawConfigParser()
|
||||||
|
self.fileconfig.read(self.conffile)
|
||||||
|
self.mcu = mcu.MCU(self, ConfigWrapper(self, 'mcu'))
|
||||||
if self.fileconfig.has_section('fan'):
|
if self.fileconfig.has_section('fan'):
|
||||||
self.objects['fan'] = fan.PrinterFan(
|
self.objects['fan'] = fan.PrinterFan(
|
||||||
self, ConfigWrapper(self, 'fan'))
|
self, ConfigWrapper(self, 'fan'))
|
||||||
|
@ -56,24 +68,16 @@ class Printer:
|
||||||
self, ConfigWrapper(self, 'heater_bed'))
|
self, ConfigWrapper(self, 'heater_bed'))
|
||||||
self.objects['toolhead'] = toolhead.ToolHead(
|
self.objects['toolhead'] = toolhead.ToolHead(
|
||||||
self, ConfigWrapper(self, 'printer'))
|
self, ConfigWrapper(self, 'printer'))
|
||||||
def set_fileoutput(self, debugoutput, dictionary):
|
|
||||||
self.debugoutput = debugoutput
|
|
||||||
self.dictionary = dictionary
|
|
||||||
def stats(self, eventtime):
|
|
||||||
out = []
|
|
||||||
out.append(self.gcode.stats(eventtime))
|
|
||||||
out.append(self.objects['toolhead'].stats(eventtime))
|
|
||||||
out.append(self.mcu.stats(eventtime))
|
|
||||||
logging.info("Stats %.0f: %s" % (eventtime, ' '.join(out)))
|
|
||||||
return eventtime + 1.
|
|
||||||
def build_config(self):
|
def build_config(self):
|
||||||
for oname in sorted(self.objects.keys()):
|
for oname in sorted(self.objects.keys()):
|
||||||
self.objects[oname].build_config()
|
self.objects[oname].build_config()
|
||||||
self.gcode.build_config()
|
self.gcode.build_config()
|
||||||
self.mcu.build_config()
|
self.mcu.build_config()
|
||||||
def connect(self, eventtime):
|
def connect(self, eventtime):
|
||||||
if self.debugoutput is not None:
|
self.load_config()
|
||||||
self.reactor.update_timer(self.stats_timer, self.reactor.NEVER)
|
if self.debugoutput is None:
|
||||||
|
self.reactor.update_timer(self.stats_timer, self.reactor.NOW)
|
||||||
|
else:
|
||||||
self.mcu.connect_file(self.debugoutput, self.dictionary)
|
self.mcu.connect_file(self.debugoutput, self.dictionary)
|
||||||
self.mcu.connect()
|
self.mcu.connect()
|
||||||
self.build_config()
|
self.build_config()
|
||||||
|
|
Loading…
Reference in New Issue