summaryrefslogtreecommitdiffstats
path: root/ctrl/models
diff options
context:
space:
mode:
Diffstat (limited to 'ctrl/models')
-rw-r--r--ctrl/models/Makefile14
-rw-r--r--ctrl/models/hexacopter.vala (renamed from ctrl/models/hexa.vala)9
2 files changed, 23 insertions, 0 deletions
diff --git a/ctrl/models/Makefile b/ctrl/models/Makefile
new file mode 100644
index 0000000..113d1be
--- /dev/null
+++ b/ctrl/models/Makefile
@@ -0,0 +1,14 @@
+include ../../config.mk
+
+all: Hexacopter.so
+
+clean:
+ rm -f *.c *.so
+
+hexacopter.c: hexacopter.vala
+ $(VALAC) --pkg gmodule-2.0 --pkg posix --pkg linux -C $< ../copter-model.vala
+
+Hexacopter.so: hexacopter.c
+ $(CC) -shared -fPIC `pkg-config --cflags --libs glib-2.0 gobject-2.0 gmodule-2.0` -o $@ $<
+
+.PHONY: all clean
diff --git a/ctrl/models/hexa.vala b/ctrl/models/hexacopter.vala
index 176d3d6..9462bc8 100644
--- a/ctrl/models/hexa.vala
+++ b/ctrl/models/hexacopter.vala
@@ -29,6 +29,10 @@ public class Hexacopter : CopterModel {
FRONT_LEFT,
}
+ public override void init(KeyFile cfg) throws Error {
+ /* No Config */
+ }
+
public override uint8 get_motor_amount() {
return 6;
}
@@ -62,3 +66,8 @@ public class Hexacopter : CopterModel {
return cmd;
}
}
+
+public Type register_plugin (Module module) {
+ // types are registered automatically
+ return typeof(Hexacopter);
+}