Exemplo n.º 1
0
 def changeTagSize(self, size):
     name = "CHANGE-SIZE-TAG"
     id = self.state.getId()
     values = {
         "size": size
     }
     return Message(name, values, id)
Exemplo n.º 2
0
 def status(self):
     msg = Message.format("info", "GUI", "APP", {
         "body": "",
         "method": "stat",
         "params": {}
     })
     self.__kernel_socket.send(msg.encode())
     data = self.__kernel_socket.recv(self.__BUFFER_SIZE)
     if data:
         line = data.decode('UTF-8')  # convert to string (Python 3 only)
         print("< " + line)
         response = Message(line)
         msge = response.get_msg()
         body = msge["body"]
         return [tuple(d.values()) for d in body]
     else:
         raise InterruptedError
Exemplo n.º 3
0
 def generate_log(self, msg_obj: Message):
     """
     Generates logs based on incoming messages.
     """
     date = str(datetime.now())
     cmd = msg_obj.get_cmd()
     src = msg_obj.get_src()
     dst = msg_obj.get_dst()
     info = f"Log: {date} -> cmd:{cmd}, src:{src}, dst: {dst}"
     msg = {
         "method": "addLineLog",
         "params": {
             "info": info
         },
     }
     return Message.format("info", msg_obj.get_src(), "FILE_MAN",
                           msg).replace("\\", "")
Exemplo n.º 4
0
    def readLogFile(self):
        msg = Message.format("info", "GUI", "FILE_MAN", {
            "body": "",
            "method": "readLogFile",
            "params": {}
        })
        self.__kernel_socket.send(msg.encode())
        data = self.__kernel_socket.recv(self.__BUFFER_SIZE)
        if data:
            line = data.decode('UTF-8')  # convert to string (Python 3 only)
            print("< " + line)
            response = Message(line)
            msge = response.get_msg()
            return json.loads(msge["body"])

        else:
            raise InterruptedError
Exemplo n.º 5
0
 def __execute(self, msg):
     msg_obj = Message(msg)
     cmd = msg_obj.get_cmd()
     src = msg_obj.get_src()
     response = ""
     if cmd == "info":
         body = msg_obj.get_msg()
         method = body["method"]
         params = body["params"]
         if method == "stat":
             response = self.__app_handler.get_processes_info()
         elif method == "prior":
             pid = params["pid"]
             priority_id = params["priority_id"]
             response = self.__app_handler.set_priority(priority_id, pid)
         elif method == "term":
             pid = params["pid"]
             response = self.__app_handler.terminate(pid)
         elif method == "halt":
             self.__app_handler.terminate_all()
             response = "All processes have been terminated"
         elif method == "launch":
             self.__app_handler.run()
             response = "Processes running"
         else:
             response = f"error: no such method {method}"
     elif cmd == "stop" and src == "KERNEL":
         self.__app_handler.terminate_all()
         response = "Closing due to KERNEL request. BYE"
     else:
         response = f"error: no such command {cmd} or access denied"
     response_msg = {"body": response}
     response_str = Message.format("send", "APP", msg_obj.get_src(),
                                   response_msg)
     return response_str
Exemplo n.º 6
0
    def configureBlobTracking(self, red, green, blue, custom):
        name = "CONFIGURE-BLOBTRACKING"
        id = self.state.getId()
        values = {"red": red,
                  "green": green,
                  "blue": blue,
                  "custom": custom}

        return Message(name, values, id)
Exemplo n.º 7
0
    def movePan(self, pos, speed):
        name = "MOVEPAN"
        id = self.state.getId()
        values = {
            "pos": self.panBounds(self.externalAngleToInternal(pos)),
            "speed": speed
        }

        return Message(name, values, id)
Exemplo n.º 8
0
    def movePanWait(self, pos, speed):
        name = "MOVEPAN-BLOCKING"
        id = self.state.getId()
        values = {
            "pos": self.panBounds(self.externalAngleToInternal(pos)),
            "speed": speed,
            "blockid": id
        }

        return Message(name, values, id)
Exemplo n.º 9
0
    def moveWheelsSeparatedWait(self, speedL, speedR, time):
        name = "MOVE-BLOCKING"
        id = self.state.getId()
        values = {
            "lspeed": speedL,
            "rspeed": speedR,
            "time": time,
            "blockid": id
        }

        return Message(name, values, id)
Exemplo n.º 10
0
    def moveWheelsByDegree(self, wheel, degrees, speed):
        name = "MOVEBY-DEGREES"
        id = self.state.getId()
        values = {
            "wheel": wheel.value,
            "degrees": degrees,
            "speed": speed,
            "blockid": id
        }

        return Message(name, values, id)
Exemplo n.º 11
0
    def advancedLostBlobConfiguration(self, frames, minarea, max_count,
                                      epsilon):
        name = "CONFIGURE-LOSTBLOB"
        id = self.state.getId()
        values = {
            "frames": frames,
            "minarea": minarea,
            "max_count": max_count,
            "epsilon": epsilon
        }

        return Message(name, values, id)
Exemplo n.º 12
0
 def stopProcess(self):
     msg = Message.format("stop", "GUI", "KERNEL", {
         "body": None,
         "method": None,
         "params": None
     })
     self.__kernel_socket.send(msg.encode())
     data = self.__kernel_socket.recv(self.__BUFFER_SIZE)
     if data:
         line = data.decode('UTF-8')  # convert to string (Python 3 only)
         print("< " + line)
     else:
         raise InterruptedError
Exemplo n.º 13
0
 def listDirectoriesInDirectory(self):
     msg = Message.format("info", "GUI", "FILE_MAN", {
         "body": "",
         "method": "listDirectoriesInDirectory",
         "params": {}
     })
     self.__kernel_socket.send(msg.encode())
     data = self.__kernel_socket.recv(self.__BUFFER_SIZE)
     if data:
         line = data.decode('UTF-8')  # convert to string (Python 3 only)
         print("< " + line)
     else:
         raise InterruptedError
Exemplo n.º 14
0
 def __execute(self, msg):
     msg_obj = Message(msg)
     cmd = msg_obj.get_cmd()
     src = msg_obj.get_src()
     response = ""
     if cmd == "info":
         body = msg_obj.get_msg()
         method = body['method']
         params = body['params']
         if method == "addLineLog":
             infoLog = params["info"]
             response = self.__file_manager.addLineLog(infoLog)
         elif method == "deleteLog":
             response = self.__file_manager.deleteLogFile()
         elif method == "readLogFile":
             response = self.__file_manager.readLogFile()
         elif method == "listLogs":
             response = self.__file_manager.listLogs()
         elif method == "createDir":
             nameDir = params['nameDir']
             response = self.__file_manager.createDir(nameDir)
         elif method == "deleteDir":
             nameDir = params['nameDir']
             response = self.__file_manager.deleteDir(nameDir)
         elif method == "addFileInDirectory":
             nameDir = params['nameDir']
             response = self.__file_manager.addFileInDirectory(nameDir)
         elif method == "addLineInFileDirectory":
             nameDir = params['nameDir']
             info = params['info']
             response = self.__file_manager.addLineInFileDirectory(
                 nameDir, info)
         elif method == "listDirectoriesInDirectory":
             nameDir = params['nameDir']
             response = self.__file_manager.listDirectoriesInDirectory(
                 nameDir)
         elif method == "setFileName":
             fileName = params['fileName']
             response = self.__file_manager.setFileName(fileName)
         elif method == "getFileName":
             response = self.__file_manager.getFileName()
         else:
             response = f"error: no such method {method}"
     elif cmd == "stop" and src == "KERNEL":
         response = "Closing due to KERNEL request. BYE"
     else:
         response = f"error: no such command {cmd} or access denied"
     response_msg = {"body": response}
     response_str = Message.format("send", "FILE_MAN", msg_obj.get_src(),
                                   response_msg)
     print("RES:  " + response)
     return response_str
Exemplo n.º 15
0
 def terminateProcess(self, pid):
     msg = Message.format("info", "GUI", "APP", {
         "body": "",
         "method": "term",
         "params": {
             "pid": pid
         }
     })
     self.__kernel_socket.send(msg.encode())
     data = self.__kernel_socket.recv(self.__BUFFER_SIZE)
     if data:
         line = data.decode('UTF-8')  # convert to string (Python 3 only)
         print("< " + line)
     else:
         raise InterruptedError
Exemplo n.º 16
0
 def setFileName(self, fileName):
     msg = Message.format("info", "GUI", "FILE_MAN", {
         "body": "",
         "method": "setFileName",
         "params": {
             "fileName": fileName
         }
     })
     self.__kernel_socket.send(msg.encode())
     data = self.__kernel_socket.recv(self.__BUFFER_SIZE)
     if data:
         line = data.decode('UTF-8')  # convert to string (Python 3 only)
         print("< " + line)
     else:
         raise InterruptedError
Exemplo n.º 17
0
 def setCameraFps(self, fps):
     name = "SET-CAMERA-FPS"
     id = self.state.getId()
     values = {"fps": fps}
     return Message(name, values, id)
Exemplo n.º 18
0
    def setEmotion(self, emotion):
        name = "SET-EMOTION"
        id = self.state.getId()
        values = {"emotion": emotion.value}

        return Message(name, values, id)
Exemplo n.º 19
0
 def setLaneColorInversionOff(self):
     name = "INVERT-COLORS-LANE-OFF"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 20
0
 def stopLineStats(self):
     name = "STOP-LINE-STATS"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 21
0
 def startLine(self):
     name = "START-LINE"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 22
0
 def stopLane(self):
     name = "STOP-LANE"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 23
0
 def stopTag(self):
     name = "STOP-TAG"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 24
0
 def stopQrTracking(self):
     name = "STOP-QR-TRACKING"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 25
0
 def stopObjectRecognition(self):
     name = "STOP-OBJECT-RECOGNITION"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 26
0
 def stopFaceDetection(self):
     name = "STOP-FACE-DETECTION"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 27
0
 def stopColorMeasurement(self):
     name = "STOP-COLOR-MEASUREMENT"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 28
0
 def startColorMeasurement(self):
     name = "START-COLOR-DETECTION"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 29
0
 def stopColorDetection(self):
     name = "STOP-COLOR-DETECTION"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)
Exemplo n.º 30
0
 def stopCamera(self):
     name = "STOP-CAMERA"
     id = self.state.getId()
     values = {}
     return Message(name, values, id)