commit 28e2e22711a8eea1fb10e05dc3acb0f2fbd201b7
Author: Martin Toutant <martin.toutant@inrae.fr>
Date:   Wed Aug 24 15:19:29 2022 +0200

    début documentation

diff --git a/TestXamConnections/TestXamConnections/Models/Device.cs b/TestXamConnections/TestXamConnections/Models/Device.cs
index 51852ca..3d434e1 100644
--- a/TestXamConnections/TestXamConnections/Models/Device.cs
+++ b/TestXamConnections/TestXamConnections/Models/Device.cs
@@ -4,9 +4,19 @@ using System.Text;
 
 namespace TestXamConnections.Models
 {
+    /// <summary>
+    /// Représente un appareil caractérisé par un nom et une adresse MAC.
+    /// </summary>
     public class Device
     {
+        /// <summary>
+        /// Le nom de l'appareil.
+        /// </summary>
         public string Name { get; set; }
+
+        /// <summary>
+        /// L'adresse MAC de l'appareil
+        /// </summary>
         public string MACAddress { get; set; }
 
         public override string ToString()
diff --git a/TestXamConnections/TestXamConnections/Models/ReponsePesee.cs b/TestXamConnections/TestXamConnections/Models/ReponsePesee.cs
index 956450a..480d521 100644
--- a/TestXamConnections/TestXamConnections/Models/ReponsePesee.cs
+++ b/TestXamConnections/TestXamConnections/Models/ReponsePesee.cs
@@ -8,7 +8,9 @@ namespace TestXamConnections.Models
     public class ReponsePesee
     {
         private int numPlateau;
-
+        /// <summary>
+        /// Le numéro du plateau.
+        /// </summary>
         public int NumPlateau
         {
             get { return numPlateau; }
@@ -16,7 +18,9 @@ namespace TestXamConnections.Models
         }
 
         private int typePlateau;
-
+        /// <summary>
+        /// Le type du plateau.
+        /// </summary>
         public int TypePlateau
         {
             get { return typePlateau; }
@@ -24,7 +28,9 @@ namespace TestXamConnections.Models
         }
 
         private string poidsMesure;
-
+        /// <summary>
+        /// Le poids mesuré, en kilogramme. 
+        /// </summary>
         public string PoidsMesure
         {
             get { return poidsMesure; }
@@ -32,7 +38,9 @@ namespace TestXamConnections.Models
         }
 
         private bool isNegative;
-
+        /// <summary>
+        /// Indique si le poids mesurée est négatif. True = poids négatif. 
+        /// </summary>
         public bool IsNegative
         {
             get { return isNegative; }
diff --git a/TestXamConnections/TestXamConnections/Models/TeoBalance.cs b/TestXamConnections/TestXamConnections/Models/TeoBalance.cs
index 5772c2b..4462fa7 100644
--- a/TestXamConnections/TestXamConnections/Models/TeoBalance.cs
+++ b/TestXamConnections/TestXamConnections/Models/TeoBalance.cs
@@ -9,6 +9,9 @@ using Xamarin.Forms;
 
 namespace TestXamConnections.Models
 {
+    /// <summary>
+    /// Liste des commandes disponibles pour la balance Teo, pour le programme INRAE.
+    /// </summary>
     public enum TeoCommandType
     {
         // Voir documentation TEO INRAE 
@@ -31,7 +34,14 @@ namespace TestXamConnections.Models
     public class TeoBalance : Device
     {
         private IConnectionService ConnectionService { get; set; }
+
+        /// <summary>
+        /// Evenement déclenché à la réception d'une donnée de la part du Teo, autre qu'une pesée.
+        /// </summary>
         public EventHandler<string> TeoDataReceivedEvent { get; set; }
+        /// <summary>
+        /// Evenement déclenché à la reception d'une pesée de la part du Teo.
+        /// </summary>
         public EventHandler<ReponsePesee> TeoPeseeReceivedEvent { get; set; }
 
         public TeoBalance(Device device)
@@ -48,16 +58,14 @@ namespace TestXamConnections.Models
         }
 
         /* 
-         * Fonction déclenchée à la reception de données
-         * Trigger l'evenement TeoDataReceivedEvent
+         * Fonction déclenchée à la reception de données par le ConnectionService
+         * Trigger l'evenement TeoDataReceivedEvent ou TeoPeseeReceivedEvent.
          * 
          * IMPORTANT: Les trames du Teo peuvent arriver découpées,
          * Donc les données sont gardées dans un buffer d'envoi
          * nommé _bufferedData
          */
         private string _bufferedData;
-
-        // Fonction appelée lors de la reception de données par le ConnectionService
         private void TeoDataReceived(object sender, byte[] buffer)
         {
             // Si le premier character est 2 (ASCII: STX)
@@ -85,12 +93,13 @@ namespace TestXamConnections.Models
                 // Conversion en chaîne de caractères
                 // Et on complète le buffer d'envoi
                 _bufferedData += Encoding.ASCII.GetString(buffer);
-                // Trigger evènement en fonction de la trame
                 
+                // Trigger evènement en fonction de la trame
                 if (_bufferedData.Length == 12)
                 {
                     TeoPeseeReceivedEvent.Invoke(this, new ReponsePesee(_bufferedData));
-                } else if (_bufferedData[2] == '6')
+                }
+                else if (_bufferedData[2] == '6')
                 {
                     TeoDataReceivedEvent.Invoke(this, "Erreur pesée");
                 } 
@@ -101,7 +110,11 @@ namespace TestXamConnections.Models
             }
         }
 
-        // Connexion à l'appareil en fonction de son addr MAC
+        /// <summary>
+        /// Permet d’établir une connection bluetooth avec la balance Teo. 
+        /// Important : le bluetooth doit être activé, la balance allumée et les appareils doivent déjà être appairés.
+        /// </summary>
+        /// <returns>true si la connection a réussi, false sinon.</returns>
         public async Task<bool> ConnectToTeoAsync()
         {
             Dictionary<string, string> param = new Dictionary<string, string>()
@@ -118,8 +131,12 @@ namespace TestXamConnections.Models
             return await ConnectionService.SendCommand(GetCommandCode(c));
         }
 
-        // Retourne la chaine d'octets d'une commande Teo (prog INRAE)
-        public static byte[] GetCommandCode(TeoCommandType c)
+        /// <summary>
+        /// Récupère le code hexadécimal d'une commande donnée.
+        /// </summary>
+        /// <param name="commandType">La commande dont on souhaite le code hexa.</param>
+        /// <returns>Le code héxadécimal de la command sur forme de tableau d'octet.</returns>
+        public static byte[] GetCommandCode(TeoCommandType commandType)
         {
             // Les commandes envoyées sont sur 3 octets
             byte[] ret = new byte[3];
@@ -129,7 +146,7 @@ namespace TestXamConnections.Models
             ret[2] = 0x0D;
 
             // Commande
-            switch (c)
+            switch (commandType)
             {
                 case TeoCommandType.ModeOrdre:
                     ret[1] = 0x61;
@@ -187,14 +204,18 @@ namespace TestXamConnections.Models
             return ret;
         }
 
-        // Retourne le nom d'une commande Teo (prog INRAE)
-        public static string GetCommandName(TeoCommandType c)
+        /// <summary>
+        /// Recupère le nom d'une commande donnée.
+        /// </summary>
+        /// <param name="commandType">La commande dont on souhaite le nom.</param>
+        /// <returns>Le nom de la commande.</returns>
+        public static string GetCommandName(TeoCommandType commandType)
         {
             // Les commandes envoyées sont sur 3 octets
             string ret = "";
 
             // Commande
-            switch (c)
+            switch (commandType)
             {
                 case TeoCommandType.ModeOrdre:
                     ret = "Mode attente ordre";
