From b2164b43b65ea3245eb38b1583798bae76bb73d1 Mon Sep 17 00:00:00 2001
From: minssen_pie <pierre.minssen@supelec.fr>
Date: Mon, 10 Dec 2018 10:34:51 +0100
Subject: [PATCH] commentaire de code

---
 viscaoveriplib/controleur.py               | 33 ++++++++++++++++------
 viscaoveriplib/inquiry_responds_library.py |  4 ++-
 viscaoveriplib/responds_messages.py        |  4 +--
 3 files changed, 30 insertions(+), 11 deletions(-)

diff --git a/viscaoveriplib/controleur.py b/viscaoveriplib/controleur.py
index 8df431f..31b66f1 100644
--- a/viscaoveriplib/controleur.py
+++ b/viscaoveriplib/controleur.py
@@ -3,25 +3,42 @@ from viscaoveriplib.listener import Listener
 import viscaoveriplib.inquiry_responds_library as inq_resp
 import viscaoveriplib.responds_messages as default_resp
 
+
 class Controller:
 
     def __init__(self, c: Camera, l: Listener):
         self.camera = c
         self.listener = l
 
-    def decompose_reception(self):
-        reception = self.listener.message
+    @staticmethod
+    def decompose_reception(reception: str):
+        """
+        decomposes the hex received messaged
+
+        :param reception: str hex eg '01110003000085029051ff'
+        :return: list of str hex [payload_type, payload_length, sequence_number, payload] eg ['0111', '0003', '00008502', '9051ff']
+        """
         payload_type = reception[0:4]
         payload_length = reception[4:8]
         sequence_number = reception[8:16]
         payload = reception[16:]
         return [payload_type, payload_length, sequence_number, payload]
 
-    def payload2meaning(self, payload: str, comandetype="default"):
-        #TODO
-        if comandetype in inq_resp.inq_list:
-            return inq_resp.inq_list.get(comandetype).get(payload)
-
+    @staticmethod
+    def payload2meaning(payload: str, command_type="default"):
+        """
+        Reveal the meaning of the visca respond
+        :param payload: payload recieved in str hex eg '9051ff'
+        :param command_type: type of command, the respond's meaning depends on the inquiry/command
+        :return: the meaning in str
+        """
+        meaning = "Not known"
+        if command_type in inq_resp.inq_list:
+            # if payload is not in the dictionary meaning = None
+            meaning = inq_resp.inq_list.get(command_type).get(payload)
         else:
-            return default_resp.liste_respond.get(payload)
+            meaning = default_resp.liste_respond.get(payload)
+        if meaning is None:
+            meaning = "Respond not understood"
+        return meaning
 
diff --git a/viscaoveriplib/inquiry_responds_library.py b/viscaoveriplib/inquiry_responds_library.py
index 53899cc..2f61d73 100644
--- a/viscaoveriplib/inquiry_responds_library.py
+++ b/viscaoveriplib/inquiry_responds_library.py
@@ -1,4 +1,6 @@
-# liste de dico non exaustif
+"""
+Dictionary of responds depending on the inquiry command
+"""
 
 respond = {'y05002FF': "On", 'y05003FF': "Off", "y05000FF": "auto/standard"}
 
diff --git a/viscaoveriplib/responds_messages.py b/viscaoveriplib/responds_messages.py
index a0a6626..f734198 100644
--- a/viscaoveriplib/responds_messages.py
+++ b/viscaoveriplib/responds_messages.py
@@ -1,3 +1,3 @@
-liste_respond = {'904yff': "Ackknowledge", '905yff': "Completion", "006002ff": "Syntax Error",
-                 "906003ff": "Command Buffer Full", "906y04ff": "Command Conceled", "906y05ff": "No Socket",
+liste_respond = {'904yff': "Acknowledge", '905yff': "Completion", "006002ff": "Syntax Error",
+                 "906003ff": "Command Buffer Full", "906y04ff": "Command Canceled", "906y05ff": "No Socket",
                  "906y41ff": "Command Not Executable"}
-- 
GitLab