[chronojump] encoder: Added 'e' or 'c' on ecS set/repetition export to csv



commit 822c9ecd2095d811a83965d455c5ceee0c38c4b0
Author: Xavier de Blas <xaviblas gmail com>
Date:   Sat Jun 6 12:49:27 2020 +0200

    encoder: Added 'e' or 'c' on ecS set/repetition export to csv

 src/encoder.cs              | 13 +++++++++++--
 src/gui/app1/encoder.cs     | 13 ++++++++++++-
 src/gui/encoderTreeviews.cs |  4 ++--
 3 files changed, 25 insertions(+), 5 deletions(-)
---
diff --git a/src/encoder.cs b/src/encoder.cs
index c29a3e27..e791c996 100644
--- a/src/encoder.cs
+++ b/src/encoder.cs
@@ -418,7 +418,9 @@ public class EncoderCurve
                }
        }
 
-       public string ToCSV(bool captureOrAnalyze, string decimalSeparator, bool useWorkKcal)
+       //ecChar adds an 'e', 'c' or nothing to N
+       //if e or c then N will be /2
+       public string ToCSV (bool captureOrAnalyze, string decimalSeparator, bool useWorkKcal, string ecChar)
        {
                //latin:        2,3 ; 2,5
                //non-latin:    2.3 , 2.5
@@ -432,8 +434,14 @@ public class EncoderCurve
                string str = "";
                //TODO: if capture not shown because some variables like Inertia are not defined
                if(! captureOrAnalyze)
+               {
+                       string nprint = N;
+                       if(ecChar == "e" || ecChar == "c")
+                               nprint = decimal.Truncate((Convert.ToInt32(nprint) +1) /2).ToString() + 
ecChar;
+
                        str = 
-                               N + sep + Series + sep + Exercise + sep + Laterality + sep +
+                               nprint + sep +
+                               Series + sep + Exercise + sep + Laterality + sep +
                                ExtraWeight + sep + DisplacedWeight + sep + Inertia + sep + 
                                Start + sep + Duration + sep + Height + sep + 
                                MeanSpeed + sep + MaxSpeed + sep + MaxSpeedT + sep + 
@@ -442,6 +450,7 @@ public class EncoderCurve
                                MeanForce + sep + MaxForce + sep + MaxForceT + sep +
                                MaxForce_MaxForceT + sep +
                                work.ToString() + sep + Impulse;
+               }
                
                if(decimalSeparator == "COMMA")
                        str = Util.ConvertToComma(str);
diff --git a/src/gui/app1/encoder.cs b/src/gui/app1/encoder.cs
index 8ad76555..60b565cd 100644
--- a/src/gui/app1/encoder.cs
+++ b/src/gui/app1/encoder.cs
@@ -4503,8 +4503,19 @@ public partial class ChronoJumpWindow
                                                        GetTreeviewEncoderAnalyzeHeaders(false), sep), 
false));
                                //write curves rows
                                ArrayList array = getTreeViewCurves(encoderAnalyzeListStore);
+
                                foreach (EncoderCurve ec in array)
-                                       writer.WriteLine(ec.ToCSV(false, 
preferences.CSVExportDecimalSeparator, preferences.encoderWorkKcal));
+                               {
+                                       string phase = "";
+                                       if(radio_encoder_analyze_individual_current_set.Active && 
findEccon(false) == "ecS" && ec.IsNumberN())
+                                       {
+                                               phase = "e";
+                                               if(Util.IsEven(Convert.ToInt32(ec.N)))
+                                                       phase = "c";
+                                       }
+
+                                       writer.WriteLine(ec.ToCSV(false, 
preferences.CSVExportDecimalSeparator, preferences.encoderWorkKcal, phase));
+                               }
                        }
                        
                        writer.Flush();
diff --git a/src/gui/encoderTreeviews.cs b/src/gui/encoderTreeviews.cs
index 9d02cef4..e20d28f4 100644
--- a/src/gui/encoderTreeviews.cs
+++ b/src/gui/encoderTreeviews.cs
@@ -1013,7 +1013,7 @@ public partial class ChronoJumpWindow
                //Check if it's number
                if(! curve.IsNumberN()) {
                        (cell as Gtk.CellRendererText).Text = "";
-                       LogB.Error("Curve is not number at RenderN:" + curve.ToCSV(true, "COMMA", 
preferences.encoderWorkKcal));
+                       LogB.Error("Curve is not number at RenderN:" + curve.ToCSV(true, "COMMA", 
preferences.encoderWorkKcal, ""));
                        return;
                }
                
@@ -1050,7 +1050,7 @@ public partial class ChronoJumpWindow
                //Check if it's valid
                if(! curve.IsValidN()) {
                        (cell as Gtk.CellRendererText).Text = "";
-                       LogB.Error("Curve is not valid at RenderNAnalyze:" + curve.ToCSV(false, "COMMA", 
preferences.encoderWorkKcal));
+                       LogB.Error("Curve is not valid at RenderNAnalyze:" + curve.ToCSV(false, "COMMA", 
preferences.encoderWorkKcal, ""));
                        return;
                }
                        


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]