[chronojump] DB: 1.28. Select "Best" is not always meanpower now. Can be changed on capture options win
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] DB: 1.28. Select "Best" is not always meanpower now. Can be changed on capture options win
- Date: Thu, 10 Mar 2016 12:20:55 +0000 (UTC)
commit 1917fc19a20a0a6807f742b59f2f066bf69c7de2
Author: Xavier de Blas <xaviblas gmail com>
Date: Thu Mar 10 13:17:28 2016 +0100
DB: 1.28. Select "Best" is not always meanpower now. Can be changed on capture options win
src/constants.cs | 14 ++++++------
src/encoder.cs | 45 +++++++++++++++++++++++++++++++++++-------
src/gui/encoder.cs | 11 +++++----
src/gui/encoderTreeviews.cs | 12 +++++-----
src/gui/preferences.cs | 12 +++++-----
src/sqlite/main.cs | 13 ++++++++++-
src/sqlite/preferences.cs | 2 +-
7 files changed, 74 insertions(+), 35 deletions(-)
---
diff --git a/src/constants.cs b/src/constants.cs
index 2984146..80f94d6 100644
--- a/src/constants.cs
+++ b/src/constants.cs
@@ -802,17 +802,17 @@ public class Constants
LINEAR, ROTARYFRICTION, ROTARYAXIS
}
- public static string MeanSpeed = "Mean speed";
- public static string MaxSpeed = "Max speed";
- public static string MeanForce = "Mean force";
- public static string MaxForce = "Max force";
- public static string MeanPower = "Mean power";
- public static string PeakPower = "Peak power";
+ public const string MeanSpeed = "Mean speed";
+ public const string MaxSpeed = "Max speed";
+ public const string MeanForce = "Mean force";
+ public const string MaxForce = "Max force";
+ public const string MeanPower = "Mean power";
+ public const string PeakPower = "Peak power";
public enum Encoder1RMMethod { NONWEIGHTED, WEIGHTED, WEIGHTED2, WEIGHTED3 }
public enum ContextMenu { NONE, EDITDELETE, DELETE }
- public enum EncoderAutoSaveCurve { ALL, NONE, BESTMEANPOWER }
+ public enum EncoderAutoSaveCurve { ALL, NONE, BEST }
public enum DoubleContact {
NONE, FIRST, AVERAGE, LAST
diff --git a/src/encoder.cs b/src/encoder.cs
index 7ee851e..9077e77 100644
--- a/src/encoder.cs
+++ b/src/encoder.cs
@@ -331,6 +331,31 @@ public class EncoderCurve
return false;
}
+ public double GetParameter(string parameter) {
+ switch(parameter) {
+ case Constants.MeanSpeed:
+ return Convert.ToDouble(MeanSpeed);
+ break;
+ case Constants.MaxSpeed:
+ return Convert.ToDouble(MaxSpeed);
+ break;
+ case Constants.MeanForce:
+ return Convert.ToDouble(MeanForce);
+ break;
+ case Constants.MaxForce:
+ return Convert.ToDouble(MaxForce);
+ break;
+ case Constants.MeanPower:
+ return Convert.ToDouble(MeanPower);
+ break;
+ case Constants.PeakPower:
+ return Convert.ToDouble(PeakPower);
+ break;
+ default:
+ return Convert.ToDouble(MeanPower);
+ break;
+ }
+ }
public string ToCSV(bool captureOrAnalyze, string decimalSeparator) {
@@ -376,18 +401,22 @@ public class EncoderSignal
}
//this can be an eccentric or concentric curve
- public int FindPosOfBestMeanPower() {
- double bestMeanPower = 0;
- int bestMeanPowerPos = 0;
+ public int FindPosOfBest(string variable) {
+ //TODO: change for the rest of stuff
+ double bestValue = 0;
+ int bestValuePos = 0;
int i = 0;
- foreach(EncoderCurve curve in curves) {
- if(Convert.ToDouble(curve.MeanPower) > bestMeanPower) {
- bestMeanPower = Convert.ToDouble(curve.MeanPower);
- bestMeanPowerPos = i;
+
+ foreach(EncoderCurve curve in curves)
+ {
+ if(curve.GetParameter(variable) > bestValue) {
+ bestValue = curve.GetParameter(variable);
+ bestValuePos = i;
}
+
i++;
}
- return bestMeanPowerPos;
+ return bestValuePos;
}
~EncoderSignal() {}
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 433e4a5..b0ed4e7 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -3646,13 +3646,13 @@ public partial class ChronoJumpWindow
}
void on_button_encoder_capture_curves_all_clicked (object o, EventArgs args) {
- encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve.ALL);
+ encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve.ALL,
encoderCaptureOptionsWin.GetMainVariable());
}
void on_button_encoder_capture_curves_best_clicked (object o, EventArgs args) {
- encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve.BESTMEANPOWER);
+ encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve.BEST,
encoderCaptureOptionsWin.GetMainVariable());
}
void on_button_encoder_capture_curves_none_clicked (object o, EventArgs args) {
- encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve.NONE);
+ encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve.NONE,
encoderCaptureOptionsWin.GetMainVariable());
}
void on_combo_encoder_analyze_data_compare_changed (object o, EventArgs args)
@@ -5676,13 +5676,14 @@ public partial class ChronoJumpWindow
if(
encoderSignalUniqueID == "-1" && //if we just
captured
(preferences.encoderAutoSaveCurve ==
Constants.EncoderAutoSaveCurve.ALL ||
- preferences.encoderAutoSaveCurve ==
Constants.EncoderAutoSaveCurve.BESTMEANPOWER) )
+ preferences.encoderAutoSaveCurve ==
Constants.EncoderAutoSaveCurve.BEST) )
needToAutoSaveCurve = true;
encoder_pulsebar_capture.Text = encoderSaveSignalOrCurve(false,
"signal", 0); //this updates encoderSignalUniqueID
if(needToAutoSaveCurve)
-
encoderCaptureSaveCurvesAllNoneBest(preferences.encoderAutoSaveCurve);
+ encoderCaptureSaveCurvesAllNoneBest(
+ preferences.encoderAutoSaveCurve,
encoderCaptureOptionsWin.GetMainVariable());
} else
encoder_pulsebar_capture.Text = "";
diff --git a/src/gui/encoderTreeviews.cs b/src/gui/encoderTreeviews.cs
index e248339..e4a98d6 100644
--- a/src/gui/encoderTreeviews.cs
+++ b/src/gui/encoderTreeviews.cs
@@ -329,14 +329,14 @@ public partial class ChronoJumpWindow
}
}
- //allNone: true (save all), false (unsave all)
- void encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve saveOption)
+ //mainVariable used if saveOption == BEST
+ void encoderCaptureSaveCurvesAllNoneBest(Constants.EncoderAutoSaveCurve saveOption, string
mainVariable)
{
int bestRow = 0;
- if(saveOption == Constants.EncoderAutoSaveCurve.BESTMEANPOWER) {
+ if(saveOption == Constants.EncoderAutoSaveCurve.BEST) {
//get the concentric curves
EncoderSignal encoderSignal = new
EncoderSignal(treeviewEncoderCaptureCurvesGetCurves(AllEccCon.CON));
- bestRow = encoderSignal.FindPosOfBestMeanPower();
+ bestRow = encoderSignal.FindPosOfBest(mainVariable);
//convert from c to ec. eg.
//three concentric curves: c[0], c[1], c[2]
@@ -368,8 +368,8 @@ public partial class ChronoJumpWindow
EncoderCurve curve = (EncoderCurve) encoderCaptureListStore.GetValue (iter, 0);
if(
(! curve.Record && saveOption == Constants.EncoderAutoSaveCurve.ALL)
||
- (! curve.Record && saveOption ==
Constants.EncoderAutoSaveCurve.BESTMEANPOWER && i == bestRow) ||
- (curve.Record && saveOption ==
Constants.EncoderAutoSaveCurve.BESTMEANPOWER && i != bestRow) ||
+ (! curve.Record && saveOption == Constants.EncoderAutoSaveCurve.BEST
&& i == bestRow) ||
+ (curve.Record && saveOption == Constants.EncoderAutoSaveCurve.BEST &&
i != bestRow) ||
(curve.Record && saveOption == Constants.EncoderAutoSaveCurve.NONE) )
{
changeTo = ! curve.Record;
diff --git a/src/gui/preferences.cs b/src/gui/preferences.cs
index ed45706..6e01430 100644
--- a/src/gui/preferences.cs
+++ b/src/gui/preferences.cs
@@ -97,7 +97,7 @@ public class PreferencesWindow {
[Widget] Gtk.RadioButton radio_encoder_1RM_weighted;
[Widget] Gtk.RadioButton radio_encoder_1RM_weighted2;
[Widget] Gtk.RadioButton radio_encoder_1RM_weighted3;
- [Widget] Gtk.RadioButton radio_encoder_auto_save_curve_bestmeanpower;
+ [Widget] Gtk.RadioButton radio_encoder_auto_save_curve_best;
[Widget] Gtk.RadioButton radio_encoder_auto_save_curve_all;
[Widget] Gtk.RadioButton radio_encoder_auto_save_curve_none;
@@ -306,8 +306,8 @@ public class PreferencesWindow {
else
PreferencesWindowBox.radio_do_not_use_heights_on_jump_indexes.Active = true;
- if(preferences.encoderAutoSaveCurve == Constants.EncoderAutoSaveCurve.BESTMEANPOWER)
- PreferencesWindowBox.radio_encoder_auto_save_curve_bestmeanpower.Active = true;
+ if(preferences.encoderAutoSaveCurve == Constants.EncoderAutoSaveCurve.BEST)
+ PreferencesWindowBox.radio_encoder_auto_save_curve_best.Active = true;
else if(preferences.encoderAutoSaveCurve == Constants.EncoderAutoSaveCurve.ALL)
PreferencesWindowBox.radio_encoder_auto_save_curve_all.Active = true;
else
@@ -1006,9 +1006,9 @@ public class PreferencesWindow {
preferences.useHeightsOnJumpIndexes =
PreferencesWindowBox.radio_use_heights_on_jump_indexes.Active;
}
- if(PreferencesWindowBox.radio_encoder_auto_save_curve_bestmeanpower.Active) {
- SqlitePreferences.Update("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.BESTMEANPOWER.ToString(), true);
- preferences.encoderAutoSaveCurve = Constants.EncoderAutoSaveCurve.BESTMEANPOWER;
+ if(PreferencesWindowBox.radio_encoder_auto_save_curve_best.Active) {
+ SqlitePreferences.Update("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.BEST.ToString(), true);
+ preferences.encoderAutoSaveCurve = Constants.EncoderAutoSaveCurve.BEST;
}
else if(PreferencesWindowBox.radio_encoder_auto_save_curve_all.Active) {
SqlitePreferences.Update("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.ALL.ToString(), true);
diff --git a/src/sqlite/main.cs b/src/sqlite/main.cs
index 64ce02c..01c8f03 100644
--- a/src/sqlite/main.cs
+++ b/src/sqlite/main.cs
@@ -77,7 +77,7 @@ class Sqlite
/*
* Important, change this if there's any update to database
*/
- static string lastChronojumpDatabaseVersion = "1.27";
+ static string lastChronojumpDatabaseVersion = "1.28";
public Sqlite() {
}
@@ -1664,7 +1664,7 @@ class Sqlite
LogB.SQL("Added option on autosave curves on capture
(all/bestmeanpower/none)");
- SqlitePreferences.Insert ("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.BESTMEANPOWER.ToString());
+ SqlitePreferences.Insert ("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.BEST.ToString());
SqlitePreferences.Update ("databaseVersion", "1.11", true);
Sqlite.Close();
@@ -1863,6 +1863,14 @@ class Sqlite
SqlitePreferences.Update ("databaseVersion", newVersion, true);
currentVersion = newVersion;
}
+ if(currentVersion == "1.27") {
+ LogB.SQL("Changed encoderAutoSaveCurve BESTMEANPOWER to BEST");
+ Update(true, Constants.PreferencesTable, "value", "BESTMEANPOWER", "BEST",
"name", "encoderAutoSaveCurve");
+
+ newVersion = "1.28";
+ SqlitePreferences.Update ("databaseVersion", newVersion, true);
+ currentVersion = newVersion;
+ }
// --- add more updates here
@@ -2018,6 +2026,7 @@ class Sqlite
SqliteExecuteAuto.addChronojumpProfileAndBilateral();
//changes [from - to - desc]
+ //1.27 - 1.28 Converted DB to 1.28 Changed encoderAutoSaveCurve BESTMEANPOWER to BEST
//1.26 - 1.27 Converted DB to 1.27 Changing runDoubleContactsMS and runIDoubleContactsMS from
1000ms to 300ms
//1.25 - 1.26 Converted DB to 1.26 Changed Inclinated to Inclined
//1.24 - 1.25 Converted DB to 1.25 Language defaults to (empty string), means detected
diff --git a/src/sqlite/preferences.cs b/src/sqlite/preferences.cs
index af9341a..6173030 100644
--- a/src/sqlite/preferences.cs
+++ b/src/sqlite/preferences.cs
@@ -92,7 +92,7 @@ class SqlitePreferences : Sqlite
Insert ("CSVExportDecimalSeparator", Util.GetDecimalSeparatorFromLocale(),
dbcmdTr);
Insert ("RGraphsTranslate", "True", dbcmdTr);
Insert ("useHeightsOnJumpIndexes", "True", dbcmdTr);
- Insert ("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.BESTMEANPOWER.ToString(), dbcmdTr);
+ Insert ("encoderAutoSaveCurve",
Constants.EncoderAutoSaveCurve.BEST.ToString(), dbcmdTr);
Insert ("email", "", dbcmdTr);
//last encoderConfiguration, to be used on next session
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]