summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManuel Traut <manut@mecka.net>2012-06-03 16:06:44 +0200
committerManuel Traut <manut@mecka.net>2012-06-03 16:06:44 +0200
commit1650c22d9f6bcd791a17dc98fb8d9665e8faebcb (patch)
treeb6c7964be7b5ee381c03e4cbe27ebb897a1a2337
parentb0241e873c1c0c2cb5e4ad272b8ae2ce79bd922f (diff)
add generic_gpio example/test
- little test which adds a single testpin to the manager - should be extended to register gpios defined in a config file - doesn't work at the moment Signed-off-by: Manuel Traut <manut@mecka.net>
-rw-r--r--generic_gpio/Makefile33
-rw-r--r--generic_gpio/generic_gpio.cpp25
-rwxr-xr-xgeneric_gpio/run.sh9
3 files changed, 67 insertions, 0 deletions
diff --git a/generic_gpio/Makefile b/generic_gpio/Makefile
new file mode 100644
index 0000000..c24254a
--- /dev/null
+++ b/generic_gpio/Makefile
@@ -0,0 +1,33 @@
+CC := $(CROSS_COMPILE)gcc
+CXX := $(CROSS_COMPILE)g++
+LD := $(CROSS_COMPILE)g++
+
+DISTRIO_COMMON := ../common
+DISTRIO_MANAGER := ../manager/lib
+DISTRIO_IO := ../io
+
+LDFLAGS += -L$(DISTRIO_COMMON) -ldistrio_common \
+ -L$(DISTRIO_IO) -ldistrio_io \
+ -L$(DISTRIO_MANAGER) -ldistrio_manager \
+ -lACE -lTAO -lTAO_AnyTypeCode -lTAO_CosNaming -lTAO_PortableServer
+CFLAGS += -fPIC -I$(DISTRIO_COMMON) -I$(DISTRIO_IO) -I$(DISTRIO_MANAGER)
+CXXFLAGS += $(CFLAGS)
+
+DESTDIR := /usr
+
+COMPONENT = distrio_generic_gpio
+EXEC = $(COMPONENT)
+OBJ = generic_gpio.o
+
+all: $(OBJ)
+ $(LD) $(LDFLAGS) -o $(EXEC) $(OBJ)
+
+clean:
+ rm -f *.o
+ rm -f $(EXEC)
+
+install: all
+ cp -a $(EXEC) $(DESTDIR)/bin
+
+uninstall:
+ rm -f $(DESTDIR)/bin/$(EXEC)
diff --git a/generic_gpio/generic_gpio.cpp b/generic_gpio/generic_gpio.cpp
new file mode 100644
index 0000000..3287578
--- /dev/null
+++ b/generic_gpio/generic_gpio.cpp
@@ -0,0 +1,25 @@
+#include <distrio_helper.h>
+#include <distrio_ioI.h>
+
+int main (int argc, char **argv)
+{
+ int ret = 0;
+ Distrio_Digital_i *digital;
+
+ if (init_corba (argc, argv))
+ return -EINVAL;
+
+ digital = new Distrio_Digital_i ();
+
+ if (register_digital ("pin huhu", digital)) {
+ ret = -EINVAL;
+ goto out;
+ }
+
+ if (run_orb ())
+ ret = -EINVAL;
+
+out:
+ free (digital);
+ return ret;
+}
diff --git a/generic_gpio/run.sh b/generic_gpio/run.sh
new file mode 100755
index 0000000..ab1068f
--- /dev/null
+++ b/generic_gpio/run.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+#
+# startup script for distrio generic gpio exporter
+#
+# author: Manuel Traut <manut@mecka.net>
+
+LD_LIBRARY_PATH=../io:../common:../manager/lib ./distrio_generic_gpio \
+ -ORBInitRef NameService=corbaloc:iiop:localhost:12345/NameService \
+ $@