Files
PhotonVision/backend/Main.py
2019-08-17 20:04:23 +03:00

37 lines
1023 B
Python

from networktables import NetworkTables
import tornado.ioloop
import logging
from app.ChameleonVisionApp import ChameleonApplication
from app.classes.SettingsManager import SettingsManager
from tornado.options import options
import threading
import asyncio
from app.handlers.CameraHander import CameraHandler
def run_server():
asyncio.set_event_loop(asyncio.new_event_loop())
tornado.options.parse_command_line()
app = ChameleonApplication()
print(f"Serving on port {options.port}")
app.listen(options.port)
tornado.ioloop.IOLoop.current().start()
def run():
NetworkTables.startClientTeam(team=settings_manager.general_settings.get("team_number", 1577))
port = 5550
for cam_name in settings_manager.usb_cameras:
CameraHandler(cam_name, port).run()
port += 1
if __name__ == "__main__":
logging.basicConfig(level=logging.DEBUG)
settings_manager = SettingsManager()
run()
server_thread = threading.Thread(target=run_server)
server_thread.start()