diff options
| author | Manuel Traut <manut@mecka.net> | 2012-06-02 18:40:19 +0200 |
|---|---|---|
| committer | Manuel Traut <manut@mecka.net> | 2012-06-02 18:40:19 +0200 |
| commit | 89e787c826890aed88f632b1fd5cf4f65541067f (patch) | |
| tree | f509b54ec7a5c44471da7634972f4ef8822cf726 /interfaces/io.idl | |
| parent | 3fc5a341321c4c042bb464dbb1f62856fc2d31a4 (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.idl | 111 |
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 |
