2023-08-26 00:11:05 +01:00
|
|
|
def _make_output_cache(vm) -> dict:
|
2023-08-22 02:04:00 +01:00
|
|
|
match vm.kind.name:
|
|
|
|
case "basic":
|
|
|
|
return {
|
2023-08-26 00:11:05 +01:00
|
|
|
**{f"STRIP {i}||A1": vm.strip[i].A1 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||B1": vm.strip[i].B1 for i in range(vm.kind.num_strip)},
|
2023-08-22 02:04:00 +01:00
|
|
|
}
|
|
|
|
case "banana":
|
|
|
|
return {
|
2023-08-26 00:11:05 +01:00
|
|
|
**{f"STRIP {i}||A1": vm.strip[i].A1 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||A2": vm.strip[i].A2 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||A3": vm.strip[i].A3 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||B1": vm.strip[i].B1 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||B2": vm.strip[i].B2 for i in range(vm.kind.num_strip)},
|
2023-08-22 02:04:00 +01:00
|
|
|
}
|
|
|
|
case "potato":
|
|
|
|
return {
|
2023-08-26 00:11:05 +01:00
|
|
|
**{f"STRIP {i}||A1": vm.strip[i].A1 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||A2": vm.strip[i].A2 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||A3": vm.strip[i].A3 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||A4": vm.strip[i].A4 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||A5": vm.strip[i].A5 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||B1": vm.strip[i].B1 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||B2": vm.strip[i].B2 for i in range(vm.kind.num_strip)},
|
|
|
|
**{f"STRIP {i}||B3": vm.strip[i].B3 for i in range(vm.kind.num_strip)},
|
2023-08-22 02:04:00 +01:00
|
|
|
}
|
2023-08-22 20:41:44 +01:00
|
|
|
|
|
|
|
|
2023-08-26 20:22:46 +01:00
|
|
|
def _make_bus_mode_cache(vm) -> dict:
|
|
|
|
return {**{f"BUS {i}||COMPOSITE": vm.bus[i].mode.get() for i in range(vm.kind.num_bus)}}
|