Move set_on_changed registrations from on_process() to __init__()
Callbacks were registered inside the async on_process() coroutine, meaning they weren't active until the event loop started ticking. Moving them to __init__ ensures they're wired up at construction time. Also removes remaining debug prints from the affected task files. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Tqxrk8uj4M3w3d3eXm3xK8
This commit is contained in:
+7
-8
@@ -12,6 +12,13 @@ class TcTask(ATask):
|
||||
self.tc = tc
|
||||
self.msg_handler = msg_handler
|
||||
msg_handler.set_recv_handler(self.recv)
|
||||
tc.set_on_changed('state', self.on_state_changed)
|
||||
tc.set_on_changed('theta_ist', ChangedFloat(self.on_temp_ist_changed, prec=1).set)
|
||||
tc.set_on_changed('heatrate_ist', ChangedFloat(self.on_rate_ist_changed, prec=1).set)
|
||||
tc.set_on_changed('theta_soll_set', ChangedFloat(self.on_temp_soll_changed, prec=1).set)
|
||||
tc.set_on_changed('heatrate_soll', ChangedFloat(self.on_rate_soll_curr_changed, prec=1).set)
|
||||
tc.set_on_changed('heatrate_soll_set', ChangedFloat(self.on_rate_soll_set_changed, prec=1).set)
|
||||
tc.set_on_changed('enabled', self.on_enabled_changed)
|
||||
|
||||
def on_state_changed(self, value):
|
||||
asyncio.create_task(self.send({'State': str(value)}))
|
||||
@@ -48,14 +55,6 @@ class TcTask(ATask):
|
||||
await self.msg_handler.send(data)
|
||||
|
||||
async def on_process(self):
|
||||
self.tc.set_on_changed('state', self.on_state_changed)
|
||||
self.tc.set_on_changed('theta_ist', ChangedFloat(self.on_temp_ist_changed, prec=1).set)
|
||||
self.tc.set_on_changed('heatrate_ist', ChangedFloat(self.on_rate_ist_changed, prec=1).set)
|
||||
self.tc.set_on_changed('theta_soll_set', ChangedFloat(self.on_temp_soll_changed, prec=1).set)
|
||||
self.tc.set_on_changed('heatrate_soll', ChangedFloat(self.on_rate_soll_curr_changed, prec=1).set)
|
||||
self.tc.set_on_changed('heatrate_soll_set', ChangedFloat(self.on_rate_soll_set_changed, prec=1).set)
|
||||
self.tc.set_on_changed('enabled', self.on_enabled_changed)
|
||||
|
||||
self.tc.set_theta_soll(20.0)
|
||||
self.tc.set_heatrate_soll(1.0)
|
||||
await self.send({'Enabled': self.tc.enabled})
|
||||
|
||||
Reference in New Issue
Block a user