[med-svn] [aghermann] 33/60: unify the three artifact detection algorithms (part 3/4)
andrei zavada
hmmr-guest at alioth.debian.org
Mon Nov 4 23:49:57 UTC 2013
This is an automated email from the git hooks/post-receive script.
hmmr-guest pushed a commit to branch WIP
in repository aghermann.
commit fbc4a1d3fd45b53b31b0dfd0e7ab3d7e01e5b244
Author: Andrei Zavada <johnhommer at gmail.com>
Date: Sat Oct 19 01:36:28 2013 +0300
unify the three artifact detection algorithms (part 3/4)
---
upstream/data/sf-artifacts.glade | 275 +++++++++++++++---------
upstream/src/aghermann/ui/sf/d/artifacts.cc | 20 +-
upstream/src/aghermann/ui/sf/d/artifacts.hh | 16 ++
upstream/src/aghermann/ui/sf/d/artifacts_cb.cc | 41 ++++
4 files changed, 247 insertions(+), 105 deletions(-)
diff --git a/upstream/data/sf-artifacts.glade b/upstream/data/sf-artifacts.glade
index c75507f..3699974 100644
--- a/upstream/data/sf-artifacts.glade
+++ b/upstream/data/sf-artifacts.glade
@@ -1,12 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
- <object class="GtkAdjustment" id="jSFADBackpolate">
- <property name="upper">1</property>
- <property name="value">0.5</property>
- <property name="step_increment">0.01</property>
- <property name="page_increment">0.10000000000000001</property>
- </object>
<object class="GtkAdjustment" id="jSFADBandwidth">
<property name="lower">0.5</property>
<property name="upper">4</property>
@@ -14,27 +8,6 @@
<property name="step_increment">0.25</property>
<property name="page_increment">1</property>
</object>
- <object class="GtkAdjustment" id="jSFADEMGMinSteadyToneFactor">
- <property name="lower">1.01</property>
- <property name="upper">100</property>
- <property name="value">1.2</property>
- <property name="step_increment">0.01</property>
- <property name="page_increment">0.10000000000000001</property>
- </object>
- <object class="GtkAdjustment" id="jSFADEMGMinSteadyToneRun">
- <property name="lower">0.10000000000000001</property>
- <property name="upper">10</property>
- <property name="value">1</property>
- <property name="step_increment">0.10000000000000001</property>
- <property name="page_increment">1</property>
- </object>
- <object class="GtkAdjustment" id="jSFADEvalue">
- <property name="lower">0.10000000000000001</property>
- <property name="upper">40</property>
- <property name="value">4</property>
- <property name="step_increment">0.10000000000000001</property>
- <property name="page_increment">1</property>
- </object>
<object class="GtkAdjustment" id="jSFADF0">
<property name="lower">0.5</property>
<property name="upper">8</property>
@@ -49,19 +22,6 @@
<property name="step_increment">0.25</property>
<property name="page_increment">1</property>
</object>
- <object class="GtkAdjustment" id="jSFADFlatMinRegionSize">
- <property name="lower">0.050000000000000003</property>
- <property name="upper">120</property>
- <property name="value">0.5</property>
- <property name="step_increment">0.050000000000000003</property>
- <property name="page_increment">0.5</property>
- </object>
- <object class="GtkAdjustment" id="jSFADFlatPad">
- <property name="upper">10</property>
- <property name="value">0.20000000000000001</property>
- <property name="step_increment">0.050000000000000003</property>
- <property name="page_increment">0.5</property>
- </object>
<object class="GtkAdjustment" id="jSFADHistBins">
<property name="lower">80</property>
<property name="upper">9000</property>
@@ -102,6 +62,11 @@
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
+ <object class="GtkAdjustment" id="jSFADSmoothSide">
+ <property name="upper">8</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">2</property>
+ </object>
<object class="GtkAdjustment" id="jSFADUpperThr">
<property name="lower">1</property>
<property name="upper">30</property>
@@ -109,10 +74,45 @@
<property name="step_increment">0.5</property>
<property name="page_increment">2</property>
</object>
- <object class="GtkAdjustment" id="jSFADSmoothSide">
- <property name="upper">8</property>
- <property name="step_increment">1</property>
- <property name="page_increment">2</property>
+ <object class="GtkAdjustment" id="jSFADBackpolate">
+ <property name="upper">1</property>
+ <property name="value">0.5</property>
+ <property name="step_increment">0.01</property>
+ <property name="page_increment">0.10000000000000001</property>
+ </object>
+ <object class="GtkAdjustment" id="jSFADEMGMinSteadyToneFactor">
+ <property name="lower">1.01</property>
+ <property name="upper">100</property>
+ <property name="value">1.2</property>
+ <property name="step_increment">0.01</property>
+ <property name="page_increment">0.10000000000000001</property>
+ </object>
+ <object class="GtkAdjustment" id="jSFADEMGMinSteadyToneRun">
+ <property name="lower">0.10000000000000001</property>
+ <property name="upper">10</property>
+ <property name="value">1</property>
+ <property name="step_increment">0.10000000000000001</property>
+ <property name="page_increment">1</property>
+ </object>
+ <object class="GtkAdjustment" id="jSFADEvalue">
+ <property name="lower">0.10000000000000001</property>
+ <property name="upper">40</property>
+ <property name="value">4</property>
+ <property name="step_increment">0.10000000000000001</property>
+ <property name="page_increment">1</property>
+ </object>
+ <object class="GtkAdjustment" id="jSFADFlatMinRegionSize">
+ <property name="lower">0.050000000000000003</property>
+ <property name="upper">120</property>
+ <property name="value">0.5</property>
+ <property name="step_increment">0.050000000000000003</property>
+ <property name="page_increment">0.5</property>
+ </object>
+ <object class="GtkAdjustment" id="jSFADFlatPad">
+ <property name="upper">10</property>
+ <property name="value">0.20000000000000001</property>
+ <property name="step_increment">0.050000000000000003</property>
+ <property name="page_increment">0.5</property>
</object>
<object class="GtkDialog" id="wSFAD">
<property name="can_focus">False</property>
@@ -286,7 +286,7 @@
<property name="can_focus">True</property>
<property name="resize_toplevel">True</property>
<child>
- <object class="GtkGrid" id="cSFADMicrocontinuityOptions">
+ <object class="GtkGrid" id="cSFADMCBased">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="border_width">10</property>
@@ -997,21 +997,7 @@
</packing>
</child>
<child>
- <object class="GtkCheckButton" id="eSFADMCBasedConsider">
- <property name="label" translatable="yes">Inspect every </property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="halign">end</property>
- <property name="xalign">0</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="top_attach">0</property>
- <property name="width">1</property>
- <property name="height">1</property>
- </packing>
+ <placeholder/>
</child>
<child>
<placeholder/>
@@ -1026,19 +1012,59 @@
<placeholder/>
</child>
<child>
- <placeholder/>
+ <object class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Inspect every</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
</child>
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label1">
+ <object class="GtkBox" id="box3">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="label" translatable="yes">_1. Microcontinuity-based</property>
- <property name="use_underline">True</property>
- <attributes>
- <attribute name="style" value="italic"/>
- </attributes>
+ <property name="spacing">2</property>
+ <child>
+ <object class="GtkCheckButton" id="eSFADMCBasedConsider">
+ <property name="label" translatable="yes">_1. MC-based</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="halign">end</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkLabel" id="lSFADMCBasedSummary">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">label</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
</child>
</object>
@@ -1056,7 +1082,7 @@
<property name="use_underline">True</property>
<property name="resize_toplevel">True</property>
<child>
- <object class="GtkTable" id="table4">
+ <object class="GtkTable" id="cSFADFlat">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="n_rows">2</property>
@@ -1143,27 +1169,53 @@
</packing>
</child>
<child>
- <object class="GtkCheckButton" id="eSFADFlatConsider">
+ <object class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
<property name="label" translatable="yes">Consider flat regions at least </property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkBox" id="box4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">3</property>
+ <child>
+ <object class="GtkCheckButton" id="eSFADFlatConsider">
+ <property name="label" translatable="yes">_2. Flat regions</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="halign">end</property>
+ <property name="use_underline">True</property>
<property name="xalign">0</property>
<property name="draw_indicator">True</property>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkLabel" id="lSFADFlatSummary">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">label</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
</child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label2">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">_2. Flat regions</property>
- <property name="use_underline">True</property>
- <attributes>
- <attribute name="style" value="italic"/>
- </attributes>
</object>
</child>
</object>
@@ -1181,24 +1233,13 @@
<property name="use_underline">True</property>
<property name="resize_toplevel">True</property>
<child>
- <object class="GtkTable" id="table2">
+ <object class="GtkTable" id="cSFADEMG">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="n_rows">2</property>
<property name="n_columns">3</property>
<property name="row_spacing">10</property>
<child>
- <object class="GtkCheckButton" id="eSFADEMGConsider">
- <property name="label" translatable="yes">Mark artifacts where EMG is </property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="halign">end</property>
- <property name="xalign">0</property>
- <property name="draw_indicator">True</property>
- </object>
- </child>
- <child>
<object class="GtkSpinButton" id="eSFADEMGMinSteadyToneFactor">
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -1279,17 +1320,55 @@
<property name="y_options">GTK_FILL</property>
</packing>
</child>
+ <child>
+ <object class="GtkLabel" id="label4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Mark artifacts where EMG is </property>
+ </object>
+ </child>
</object>
</child>
<child type="label">
- <object class="GtkLabel" id="label4">
+ <object class="GtkBox" id="box5">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="label" translatable="yes">_3. EMG perturbations</property>
- <property name="use_underline">True</property>
- <attributes>
- <attribute name="style" value="italic"/>
- </attributes>
+ <property name="spacing">3</property>
+ <child>
+ <object class="GtkCheckButton" id="eSFADEMGConsider">
+ <property name="label" translatable="yes">_3. EMG perturbations</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="halign">end</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkLabel" id="lSFADEMGSummary">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">end</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">label</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
</child>
</object>
diff --git a/upstream/src/aghermann/ui/sf/d/artifacts.cc b/upstream/src/aghermann/ui/sf/d/artifacts.cc
index 66c0329..8051321 100644
--- a/upstream/src/aghermann/ui/sf/d/artifacts.cc
+++ b/upstream/src/aghermann/ui/sf/d/artifacts.cc
@@ -56,7 +56,9 @@ SArtifactsDialog (SScoringFacility& p_)
AGH_GBGETOBJ (eSFADProfileSaveOriginUser);
AGH_GBGETOBJ (bSFADProfileSaveOK);
+ AGH_GBGETOBJ (lSFADMCBasedSummary);
AGH_GBGETOBJ (eSFADMCBasedConsider);
+ AGH_GBGETOBJ (cSFADMCBased);
AGH_GBGETOBJ (eSFADScope);
AGH_GBGETOBJ (eSFADUpperThr);
AGH_GBGETOBJ (eSFADLowerThr);
@@ -77,11 +79,15 @@ SArtifactsDialog (SScoringFacility& p_)
AGH_GBGETOBJ (cSFADWhenEstimateEOn);
AGH_GBGETOBJ (cSFADWhenEstimateEOff);
+ AGH_GBGETOBJ (lSFADFlatSummary);
AGH_GBGETOBJ (eSFADFlatConsider);
+ AGH_GBGETOBJ (cSFADFlat);
AGH_GBGETOBJ (eSFADFlatMinRegionSize);
AGH_GBGETOBJ (eSFADFlatPad);
+ AGH_GBGETOBJ (lSFADEMGSummary);
AGH_GBGETOBJ (eSFADEMGConsider);
+ AGH_GBGETOBJ (cSFADEMG);
AGH_GBGETOBJ (eSFADEMGMinSteadyToneFactor);
AGH_GBGETOBJ (eSFADEMGMinSteadyToneRun);
@@ -107,19 +113,19 @@ SArtifactsDialog (SScoringFacility& p_)
G_CONNECT_1 (bSFADProfileRevert, clicked);
G_CONNECT_1 (bSFADProfileDiscard, clicked);
+ G_CONNECT_1 (eSFADMCBasedConsider, toggled);
+ G_CONNECT_1 (eSFADFlatConsider, toggled);
+ G_CONNECT_1 (eSFADEMGConsider, toggled);
+
for ( auto& W : {eSFADUpperThr, eSFADLowerThr, eSFADScope,
eSFADF0, eSFADFc, eSFADBandwidth, eSFADMCGain, eSFADBackpolate, eSFADEValue,
- eSFADHistRangeMin, eSFADHistRangeMax, eSFADHistBins, eSFADSmoothSide} )
+ eSFADHistRangeMin, eSFADHistRangeMax, eSFADHistBins, eSFADSmoothSide,
+ eSFADFlatMinRegionSize, eSFADFlatPad,
+ eSFADEMGMinSteadyToneFactor, eSFADEMGMinSteadyToneRun} )
g_signal_connect(
W, "value-changed",
(GCallback)eSFAD_any_profile_value_changed_cb,
this);
- // for ( auto& W : {eSFADEstimateE, eSFADSingleChannelPreview} )
- // g_signal_connect(
- // W, "toggled",
- // (GCallback)eSFAD_any_profile_value_toggled_cb,
- // this);
- /// use available *_toggled_cb for these checkbuttons
G_CONNECT_1 (eSFADEstimateE, toggled);
G_CONNECT_1 (eSFADUseThisRange, toggled);
diff --git a/upstream/src/aghermann/ui/sf/d/artifacts.hh b/upstream/src/aghermann/ui/sf/d/artifacts.hh
index 3a183e5..43e357c 100644
--- a/upstream/src/aghermann/ui/sf/d/artifacts.hh
+++ b/upstream/src/aghermann/ui/sf/d/artifacts.hh
@@ -78,6 +78,10 @@ struct SScoringFacility::SArtifactsDialog
// B. Contents
// 1. MC-based
+ GtkLabel
+ *lSFADMCBasedSummary;
+ GtkTable
+ *cSFADMCBased;
GtkCheckButton
*eSFADMCBasedConsider;
GtkSpinButton
@@ -105,6 +109,10 @@ struct SScoringFacility::SArtifactsDialog
*cSFADWhenEstimateEOff;
// 2. Flat regions
+ GtkLabel
+ *lSFADFlatSummary;
+ GtkTable
+ *cSFADFlat;
GtkCheckButton
*eSFADFlatConsider;
GtkSpinButton
@@ -112,6 +120,10 @@ struct SScoringFacility::SArtifactsDialog
*eSFADFlatPad;
// 3. EMG perturbations
+ GtkLabel
+ *lSFADEMGSummary;
+ GtkTable
+ *cSFADEMG;
GtkCheckButton
*eSFADEMGConsider;
GtkSpinButton
@@ -143,6 +155,10 @@ void bSFADProfileSave_clicked_cb( GtkButton*, gpointer);
void bSFADProfileRevert_clicked_cb( GtkButton*, gpointer);
void bSFADProfileDiscard_clicked_cb( GtkButton*, gpointer);
+void eSFADMCBasedConsider_toggled_cb( GtkToggleButton*, gpointer);
+void eSFADFlatConsider_toggled_cb( GtkToggleButton*, gpointer);
+void eSFADEMGConsider_toggled_cb( GtkToggleButton*, gpointer);
+
void eSFAD_any_profile_value_changed_cb( GtkSpinButton*, gpointer);
void eSFAD_any_profile_origin_toggled_cb(GtkRadioButton*, gpointer);
diff --git a/upstream/src/aghermann/ui/sf/d/artifacts_cb.cc b/upstream/src/aghermann/ui/sf/d/artifacts_cb.cc
index 9436466..727c460 100644
--- a/upstream/src/aghermann/ui/sf/d/artifacts_cb.cc
+++ b/upstream/src/aghermann/ui/sf/d/artifacts_cb.cc
@@ -77,6 +77,47 @@ wSFAD_close_cb(
}
+void
+eSFADMCBasedConsider_toggled_cb(
+ GtkToggleButton *b,
+ const gpointer userdata)
+{
+ auto& AD = *(SScoringFacility::SArtifactsDialog*)userdata;
+
+ gtk_widget_set_sensitive(
+ (GtkWidget*)AD.cSFADMCBased,
+ gtk_toggle_button_get_active( b));
+
+ AD.eX_any_profile_value_changed_cb();
+}
+
+void
+eSFADFlatConsider_toggled_cb(
+ GtkToggleButton *b,
+ const gpointer userdata)
+{
+ auto& AD = *(SScoringFacility::SArtifactsDialog*)userdata;
+
+ gtk_widget_set_sensitive(
+ (GtkWidget*)AD.cSFADFlat,
+ gtk_toggle_button_get_active( b));
+
+ AD.eX_any_profile_value_changed_cb();
+}
+
+void
+eSFADEMGConsider_toggled_cb(
+ GtkToggleButton *b,
+ const gpointer userdata)
+{
+ auto& AD = *(SScoringFacility::SArtifactsDialog*)userdata;
+
+ gtk_widget_set_sensitive(
+ (GtkWidget*)AD.cSFADEMG,
+ gtk_toggle_button_get_active( b));
+
+ AD.eX_any_profile_value_changed_cb();
+}
void
eSFAD_any_profile_value_changed_cb(
--
Alioth's /git/debian-med/git-commit-notice on /srv/git.debian.org/git/debian-med/aghermann.git
More information about the debian-med-commit
mailing list