flandre/src/main.py

42 lines
966 B
Python
Raw Normal View History

2025-01-19 18:27:26 +08:00
import logging
import multiprocessing
from BusClient import BusClient
from nodes.Beamformer import Beamformer
from nodes.Broker import Broker
from nodes.Device import Device
from nodes.ImageCV import ImageCV
from nodes.Loader import Loader
from nodes.MainUI import MainUI
2025-01-20 15:23:27 +08:00
from nodes.Robot import Robot
2025-01-19 18:27:26 +08:00
from nodes.WebRTC import WebRTC
from utils.Msg import KillMsg
if __name__ == '__main__':
logging.basicConfig(level=logging.INFO)
multiprocessing.set_start_method('spawn')
multiprocessing.Pool()
pps = []
ps = [
Broker(),
WebRTC(),
MainUI(),
2025-01-20 17:21:53 +08:00
Device(level=logging.DEBUG),
2025-01-19 18:27:26 +08:00
ImageCV(),
Beamformer(),
Loader(),
2025-01-20 15:23:27 +08:00
Robot(),
2025-01-19 18:27:26 +08:00
]
for p in ps:
pps.append(multiprocessing.Process(target=p))
for p in pps:
p.start()
c = BusClient(KillMsg)
while True:
x: KillMsg = c.recv()
if x.name == '':
break
for p in pps:
p.kill()