summaryrefslogtreecommitdiff
path: root/manager/distrio_manager.cpp
diff options
context:
space:
mode:
authorManuel Traut <manut@mecka.net>2012-06-03 03:47:30 +0200
committerManuel Traut <manut@mecka.net>2012-06-03 03:47:30 +0200
commit5ab993a94e073077a0ecf4e97bbc35d34eb5fbbb (patch)
tree606061fe978d77a3ef49a3659245d72c86c740fb /manager/distrio_manager.cpp
parent49bdfca64db0d821acfbad37dbe6ac3d95969e12 (diff)
manager: add quick n'dirty register functions
- no locking at the moment - no unregister at the moment Signed-off-by: Manuel Traut <manut@mecka.net>
Diffstat (limited to 'manager/distrio_manager.cpp')
-rw-r--r--manager/distrio_manager.cpp28
1 files changed, 18 insertions, 10 deletions
diff --git a/manager/distrio_manager.cpp b/manager/distrio_manager.cpp
index de707e9..b7671fb 100644
--- a/manager/distrio_manager.cpp
+++ b/manager/distrio_manager.cpp
@@ -8,7 +8,7 @@
* @licence GPLv2
*/
-#include "distrio_managerI.h"
+#include "distrio_manager.h"
#include <orbsvcs/CosNamingC.h>
@@ -27,37 +27,45 @@ Distrio_Manager_i::~Distrio_Manager_i (void)
::Distrio::Error * Distrio_Manager_i::digital (
::Distrio::Digital_list_out io_list)
{
- // Add your implementation here
+ io_list = &digital_list;
}
::Distrio::Error * Distrio_Manager_i::analog (
::Distrio::Analog_list_out io_list)
{
- // Add your implementation here
+ io_list = &analog_list;
}
::Distrio::Error * Distrio_Manager_i::device (
::Distrio::Device_list_out dev_list)
{
- // Add your implementation here
+ dev_list = &device_list;
}
+/* TODO: think about locking!!! */
+
::Distrio::Error * Distrio_Manager_i::register_io_digital (
- ::Distrio::Analog_ptr io_ana)
+ ::Distrio::Digital_ptr & io_digi)
{
- // Add your implementation here
+ io_digi->id (new_id ());
+ digital_list.length (digital_list.length () + 1);
+ digital_list [digital_list.length () - 1] = io_digi;
}
::Distrio::Error * Distrio_Manager_i::register_io_analog (
- ::Distrio::Digital_ptr io_dig)
+ ::Distrio::Analog_ptr & io_ana)
{
- // Add your implementation here
+ io_ana->id (new_id ());
+ analog_list.length (digital_list.length () + 1);
+ analog_list [analog_list.length () - 1] = io_ana;
}
::Distrio::Error * Distrio_Manager_i::register_io_device (
- ::Distrio::Device_ptr io_dev)
+ ::Distrio::Device_ptr & io_dev)
{
- // Add your implementation here
+ io_dev->id (new_id ());
+ device_list.length (device_list.length () + 1);
+ device_list [device_list.length () - 1] = io_dev;
}
::Distrio::Error * Distrio_Manager_i::unregister_io_digital (