[med-svn] [aghermann] 21/85: new class CSstorablePPack (part 1/2)
andrei zavada
hmmr-guest at alioth.debian.org
Thu Sep 26 23:46:25 UTC 2013
This is an automated email from the git hooks/post-receive script.
hmmr-guest pushed a commit to branch master
in repository aghermann.
commit 1a705e0064df7efd9ada25a42cd84642be4643a4
Author: Andrei Zavada <johnhommer at gmail.com>
Date: Thu Sep 12 19:13:03 2013 +0300
new class CSstorablePPack (part 1/2)
---
upstream/src/aghermann/expdesign/Makefile.am | 2 +
upstream/src/aghermann/expdesign/dirlevel.cc | 41 ++++++++++++
upstream/src/aghermann/expdesign/dirlevel.hh | 70 +++++++++++++++++++++
upstream/src/aghermann/expdesign/expdesign.cc | 15 -----
upstream/src/aghermann/expdesign/expdesign.hh | 13 ----
upstream/src/aghermann/expdesign/forward-decls.hh | 2 +
upstream/src/aghermann/patterns/patterns.hh | 2 +-
upstream/src/aghermann/rk1968/rk1968.cc | 1 +
upstream/src/aghermann/rk1968/rk1968.hh | 13 ++--
9 files changed, 121 insertions(+), 38 deletions(-)
diff --git a/upstream/src/aghermann/expdesign/Makefile.am b/upstream/src/aghermann/expdesign/Makefile.am
index 261b0ff..e42cc71 100644
--- a/upstream/src/aghermann/expdesign/Makefile.am
+++ b/upstream/src/aghermann/expdesign/Makefile.am
@@ -8,6 +8,8 @@ noinst_LIBRARIES := liba.a
liba_a_SOURCES := \
forward-decls.hh \
+ dirlevel.cc \
+ dirlevel.hh \
expdesign.hh \
profile.hh \
expdesign.cc \
diff --git a/upstream/src/aghermann/expdesign/dirlevel.cc b/upstream/src/aghermann/expdesign/dirlevel.cc
new file mode 100644
index 0000000..0e49339
--- /dev/null
+++ b/upstream/src/aghermann/expdesign/dirlevel.cc
@@ -0,0 +1,41 @@
+/*
+ * File name: aghermann/expdesign/dirlevel.cc
+ * Project: Aghermann
+ * Author: Andrei Zavada <johnhommer at gmail.com>
+ * Initial version: 2013-09-12
+ *
+ * Purpose: experimental design primary classes: CStorablePPack
+ *
+ * License: GPL
+ */
+
+
+#include <stdarg.h>
+#include <string>
+
+#include "dirlevel.hh"
+
+using namespace std;
+using namespace agh;
+
+const char*
+agh::
+exp_dir_level_s( TExpDirLevel x)
+{
+ switch (x) {
+ case TExpDirLevel::transient: return "~";
+ case TExpDirLevel::subject: return "[S]";
+ case TExpDirLevel::experiment: return "[E]";
+ case TExpDirLevel::user: return "[U]";
+ case TExpDirLevel::system: return "<S>";
+ default: return "?";
+ }
+}
+
+
+// Local Variables:
+// Mode: c++
+// indent-tabs-mode: nil
+// tab-width: 8
+// c-basic-offset: 8
+// End:
diff --git a/upstream/src/aghermann/expdesign/dirlevel.hh b/upstream/src/aghermann/expdesign/dirlevel.hh
new file mode 100644
index 0000000..33ceb19
--- /dev/null
+++ b/upstream/src/aghermann/expdesign/dirlevel.hh
@@ -0,0 +1,70 @@
+/*
+ * File name: aghermann/expdesign/dirlevel.hh
+ * Project: Aghermann
+ * Author: Andrei Zavada <johnhommer at gmail.com>
+ * Initial version: 2013-09-12
+ *
+ * Purpose: experimental design primary classes: CStorable
+ * class for various ppacks storable at various dir levels
+ *
+ * License: GPL
+ */
+
+
+#ifndef AGH_AGHERMANN_EXPDESIGN_DIRLEVEL_H_
+#define AGH_AGHERMANN_EXPDESIGN_DIRLEVEL_H_
+
+
+#include <string>
+#include <forward_list>
+
+#include "common/config-validate.hh"
+
+#if HAVE_CONFIG_H && !defined(VERSION)
+# include "config.h"
+#endif
+
+
+namespace agh {
+
+using namespace std;
+
+enum class TExpDirLevel {
+ transient,
+ subject,
+ experiment,
+ user,
+ system,
+};
+
+const char* exp_dir_level_s( agh::TExpDirLevel);
+
+
+class CStorablePPack {
+ public:
+ TExpDirLevel level;
+ string subdir,
+ path;
+
+ bool saved;
+
+ virtual int load() = 0;
+ virtual int save() = 0;
+
+ forward_list<confval::SValidator<double>> config_keys_g;
+ forward_list<confval::SValidator<int>> config_keys_d;
+ forward_list<confval::SValidator<size_t>> config_keys_z;
+ forward_list<confval::SValidator<bool>> config_keys_b;
+ forward_list<confval::SValidator<string>> config_keys_s;
+};
+
+} // namespace agh
+
+#endif
+
+// Local Variables:
+// Mode: c++
+// indent-tabs-mode: nil
+// tab-width: 8
+// c-basic-offset: 8
+// End:
diff --git a/upstream/src/aghermann/expdesign/expdesign.cc b/upstream/src/aghermann/expdesign/expdesign.cc
index 6e926e5..fd57bc1 100644
--- a/upstream/src/aghermann/expdesign/expdesign.cc
+++ b/upstream/src/aghermann/expdesign/expdesign.cc
@@ -26,21 +26,6 @@ using namespace std;
using agh::confval::SValidator;
-const char*
-agh::
-exp_dir_level_s( agh::TExpDirLevel x)
-{
- switch (x) {
- case TExpDirLevel::transient: return "~";
- case TExpDirLevel::subject: return "[S]";
- case TExpDirLevel::experiment: return "[E]";
- case TExpDirLevel::user: return "[U]";
- case TExpDirLevel::system: return "<S>";
- default: return "?";
- }
-};
-
-
const char
*const agh::CExpDesign::FreqBandNames[metrics::TBand::TBand_total] = {
diff --git a/upstream/src/aghermann/expdesign/expdesign.hh b/upstream/src/aghermann/expdesign/expdesign.hh
index 8c90273..b32054c 100644
--- a/upstream/src/aghermann/expdesign/expdesign.hh
+++ b/upstream/src/aghermann/expdesign/expdesign.hh
@@ -39,19 +39,6 @@ namespace agh {
using namespace std;
-
-enum class TExpDirLevel {
- transient,
- subject,
- experiment,
- user,
- system,
-};
-
-const char* exp_dir_level_s( agh::TExpDirLevel);
-
-
-
class CJGroup
: public list<CSubject> {
diff --git a/upstream/src/aghermann/expdesign/forward-decls.hh b/upstream/src/aghermann/expdesign/forward-decls.hh
index 74cf788..3f9f702 100644
--- a/upstream/src/aghermann/expdesign/forward-decls.hh
+++ b/upstream/src/aghermann/expdesign/forward-decls.hh
@@ -15,6 +15,8 @@
namespace agh {
+class CStorablePPack;
+
class CSubject;
struct SEpisode;
struct SEpisodeSequence;
diff --git a/upstream/src/aghermann/patterns/patterns.hh b/upstream/src/aghermann/patterns/patterns.hh
index cd7a2a8..6615e48 100644
--- a/upstream/src/aghermann/patterns/patterns.hh
+++ b/upstream/src/aghermann/patterns/patterns.hh
@@ -19,7 +19,7 @@
#include <gsl/gsl_math.h>
#include "libsigproc/sigproc.hh"
-#include "aghermann/expdesign/expdesign.hh" // for enum TExpDirLevel
+#include "aghermann/expdesign/dirlevel.hh" // for enum TExpDirLevel
#if HAVE_CONFIG_H && !defined(VERSION)
# include "config.h"
diff --git a/upstream/src/aghermann/rk1968/rk1968.cc b/upstream/src/aghermann/rk1968/rk1968.cc
index ac30af2..0604cf3 100644
--- a/upstream/src/aghermann/rk1968/rk1968.cc
+++ b/upstream/src/aghermann/rk1968/rk1968.cc
@@ -28,6 +28,7 @@ using namespace agh::rk1968;
CScoreAssistant::
CScoreAssistant (const string& fname)
+ : CStorablePPack ()
{
}
diff --git a/upstream/src/aghermann/rk1968/rk1968.hh b/upstream/src/aghermann/rk1968/rk1968.hh
index 1b37368..a0a0daa 100644
--- a/upstream/src/aghermann/rk1968/rk1968.hh
+++ b/upstream/src/aghermann/rk1968/rk1968.hh
@@ -14,7 +14,7 @@
#include <string>
#include <list>
-#include "aghermann/expdesign/expdesign.hh"
+#include "aghermann/expdesign/dirlevel.hh"
using namespace std;
@@ -30,7 +30,8 @@ struct SScoreAssistantPPack {
{}
};
-class CScoreAssistant {
+class CScoreAssistant
+ : public CStorablePPack {
public:
CScoreAssistant (const string& fname);
@@ -41,13 +42,7 @@ class CScoreAssistant {
int load();
int delete_file();
- string name,
- path;
-
- TExpDirLevel
- origin;
-
- bool saved:1;
+ string name;
SScoreAssistantPPack
Pp;
--
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