]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/signaltype.cpp
Add basic support for signals
[r2c2.git] / source / libr2c2 / signaltype.cpp
diff --git a/source/libr2c2/signaltype.cpp b/source/libr2c2/signaltype.cpp
new file mode 100644 (file)
index 0000000..9fb25e9
--- /dev/null
@@ -0,0 +1,37 @@
+#include "signaltype.h"
+
+using namespace std;
+
+namespace R2C2 {
+
+SignalType::SignalType(const ArticleNumber &an):
+       art_nr(an)
+{
+}
+
+
+SignalType::Loader::Loader(SignalType &st):
+       ObjectLoader<SignalType>(st)
+{
+       add("description", &SignalType::description);
+       add("indication",  &Loader::indication);
+       add("object",      &SignalType::object);
+}
+
+void SignalType::Loader::indication(const string &n)
+{
+       Indication ind;
+       ind.name = n;
+       load_sub(ind);
+       obj.indications.push_back(ind);
+}
+
+
+SignalType::Indication::Loader::Loader(Indication &i):
+       ObjectLoader<Indication>(i)
+{
+       add("aspect",      &Indication::aspect);
+       add("free_blocks", &Indication::free_blocks);
+}
+
+} // namespace R2C2