summaryrefslogtreecommitdiff
path: root/interfaces/io.idl
diff options
context:
space:
mode:
authorManuel Traut <manut@mecka.net>2012-06-02 18:40:19 +0200
committerManuel Traut <manut@mecka.net>2012-06-02 18:40:19 +0200
commit89e787c826890aed88f632b1fd5cf4f65541067f (patch)
treef509b54ec7a5c44471da7634972f4ef8822cf726 /interfaces/io.idl
parent3fc5a341321c4c042bb464dbb1f62856fc2d31a4 (diff)
fix includes paths, etc
common, io, manager can be build now Signed-off-by: Manuel Traut <manut@mecka.net>
Diffstat (limited to 'interfaces/io.idl')
-rw-r--r--interfaces/io.idl111
1 files changed, 0 insertions, 111 deletions
diff --git a/interfaces/io.idl b/interfaces/io.idl
deleted file mode 100644
index 27f9ae8..0000000
--- a/interfaces/io.idl
+++ /dev/null
@@ -1,111 +0,0 @@
-#ifndef DISTRIO_IO_IDL
-#define DISTRIO_IO_IDL
-
-#include "common.idl"
-
-/**
- * @brief the implementation of these interfaces are responsible for
- * controlling the I/O hardware
- *
- * @author Manuel Traut <manut@mecka.net>
- * @copyright GPLv2
- */
-
-module Distrio {
-
- interface Device;
-
- /** what should trigger a callback? */
- enum Digital_trigger {
- TRIGGER_EDGE,
- TRIGGER_RISING_EDGE,
- TRIGGER_FALLING_EDGE
- };
-
- /** a digital input or output pin */
- interface Digital {
- /** get the name of the hardware which is connected to this pin */
- Distrio::Error name (out string name);
- /** set this pin (fails if it's a digital input) */
- Distrio::Error set ();
- /** reset this pin (fails if it's a digital input) */
- Distrio::Error reset ();
- /** get the value of the pin ( 0 = reset, rest = set */
- Distrio::Error get (out long value);
- /** register a callback that is called if the state of the pin changes */
- Distrio::Error register_callback (in Device dev, in Digital_trigger trigger);
- /** the id is given by Controller::Manager during registration */
- attribute long id;
- };
-
- typedef sequence<Digital> Digital_list;
-
- /** what should trigger a callback? */
- struct Analog_trigger {
- /** used internal to store analog value of the last trigger */
- long last_value;
- /** e.g. if current_value > last_value + jitter -> execute callback */
- long jitter;
- };
-
- /** an analog input or output pin */
- interface Analog {
- /** name of the hardware which is connected to the pin */
- Distrio::Error name (out string name);
- /** minimum allowed value */
- Distrio::Error min (out long min);
- /** maximum allowd value */
- Distrio::Error max (out long max);
- /** set new value (may fail if out of range or pin is an input) */
- Distrio::Error set (in long value);
- /** get analog value of the pin */
- Distrio::Error get (out long value);
- /** register a callback that is called if the trigger matches */
- Distrio::Error register_callback (in Device dev, in Analog_trigger trigger);
- attribute long id;
- };
-
- typedef sequence<Analog> Analog_list;
-
- /** list of functions of all devices - new ones can be added if needed */
- enum Dev_function_id {
- DEV_START,
- DEV_STOP
- };
-
- /** definition to control the device, e.g. start or stop it */
- struct Dev_function {
- string description;
- long value;
- Dev_function_id id;
- };
-
- typedef sequence<Dev_function> Dev_function_list;
-
- /** a device could have several io's and can export functions which can be
- * controlled by a HID device or GUI
- */
- interface Device {
- /** name of the device */
- Distrio::Error name (out string name);
- /** to execute a device specific function pass the Dev_function descriotion
- * (retrived by (functions ()) as parameter
- */
- Distrio::Error execute (in Dev_function func);
- /** returns all device specific function descriptions */
- Distrio::Error functions (out Dev_function_list funcs);
- /** called by the Digital object if this object is registered as a
- * callback and the trigger hits */
- Distrio::Error callback_digital (in Digital io_dig);
- /** called by the Digital object if this object is registered as a
- * callback and the trigger hits */
- Distrio::Error callback_analog (in Analog io_ana);
- /** ID is given by Controller::Manager during registration */
- attribute long id;
- };
-
- typedef sequence<Device> Device_list;
-
-};
-
-#endif