11from control import data
22from modules .common .component_state import IoState
3- from modules .common .fault_state import FaultState
43from modules .common .store import ValueStore
54from modules .common .store ._api import LoggingValueStore
65from modules .common .store ._broker import pub_to_broker
@@ -15,31 +14,28 @@ def set(self, state: IoState) -> None:
1514 self .state = state
1615
1716 def update (self ):
18- try :
19- if self .state .digital_input :
20- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_input_prev" ,
21- data .data .io_states [f"io_states{ self .num } " ].data .get .digital_input )
22- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_input" , self .state .digital_input )
23- if self .state .analog_input :
24- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_input_prev" ,
25- data .data .io_states [f"io_states{ self .num } " ].data .get .analog_input )
26- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_input" , self .state .analog_input )
27- if self .state .digital_output :
28- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_output_prev" ,
29- data .data .io_states [f"io_states{ self .num } " ].data .get .digital_output )
30- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_output" , self .state .digital_output )
31- pub_to_broker (f"openWB/set/io/states/{ self .num } /set/digital_output_prev" ,
32- data .data .io_states [f"io_states{ self .num } " ].data .set .digital_output )
33- pub_to_broker (f"openWB/set/io/states/{ self .num } /set/digital_output" , self .state .digital_output )
34- if self .state .analog_output :
35- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_output_prev" ,
36- data .data .io_states [f"io_states{ self .num } " ].data .get .analog_output )
37- pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_output" , self .state .analog_output )
38- pub_to_broker (f"openWB/set/io/states/{ self .num } /set/analog_output_prev" ,
39- data .data .io_states [f"io_states{ self .num } " ].data .set .analog_output )
40- pub_to_broker (f"openWB/set/io/states/{ self .num } /set/analog_output" , self .state .analog_output )
41- except Exception as e :
42- raise FaultState .from_exception (e )
17+ if self .state .digital_input :
18+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_input_prev" ,
19+ data .data .io_states [f"io_states{ self .num } " ].data .get .digital_input )
20+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_input" , self .state .digital_input )
21+ if self .state .analog_input :
22+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_input_prev" ,
23+ data .data .io_states [f"io_states{ self .num } " ].data .get .analog_input )
24+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_input" , self .state .analog_input )
25+ if self .state .digital_output :
26+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_output_prev" ,
27+ data .data .io_states [f"io_states{ self .num } " ].data .get .digital_output )
28+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/digital_output" , self .state .digital_output )
29+ pub_to_broker (f"openWB/set/io/states/{ self .num } /set/digital_output_prev" ,
30+ data .data .io_states [f"io_states{ self .num } " ].data .set .digital_output )
31+ pub_to_broker (f"openWB/set/io/states/{ self .num } /set/digital_output" , self .state .digital_output )
32+ if self .state .analog_output :
33+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_output_prev" ,
34+ data .data .io_states [f"io_states{ self .num } " ].data .get .analog_output )
35+ pub_to_broker (f"openWB/set/io/states/{ self .num } /get/analog_output" , self .state .analog_output )
36+ pub_to_broker (f"openWB/set/io/states/{ self .num } /set/analog_output_prev" ,
37+ data .data .io_states [f"io_states{ self .num } " ].data .set .analog_output )
38+ pub_to_broker (f"openWB/set/io/states/{ self .num } /set/analog_output" , self .state .analog_output )
4339
4440
4541def get_io_value_store (num : int ) -> ValueStore [IoState ]:
0 commit comments