restructuration du backend

préparation de l'intégration des modules suivants
This commit is contained in:
Quentin Roussel
2023-03-22 22:10:58 +01:00
parent d896767543
commit 0d5167db57
8 changed files with 164 additions and 338 deletions

View File

@@ -0,0 +1,44 @@
from hand_detector import HandDetector
from network import WebsocketServer
import time
class Manager():
def __init__(self):
self.state = 0
self.avis = {
"note": None,
"commentaire": None,
"notes_autres": {}
}
self.server = WebsocketServer(None)
self.server.start()
self.handDetector = HandDetector()
print("Backend ready")
def loop(self):
while(True):
if(self.state == 0):
self.sleep()
if(self.state == 1):
self.camera()
time.sleep(0.01)
def sleep(self):
res = self.handDetector.detect()
if(res != False):
self.state = 1
self.server.sendMessage({"type": "state", "state": 1})
def camera(self):
res = self.handDetector.detect()
if(res != False):
state, coords, size, finalDecision = res
self.server.sendMessage({"type": "effects", "effects": [{"type": state, "x":coords[0], "y": coords[1], "width": size, "height": size}]})
if(finalDecision != False):
self.avis["note"] = 10 if finalDecision == "thumbs_up" else 0
self.state = 2
self.server.sendMessage({"type": "state", "state": 2})