aboutsummaryrefslogtreecommitdiff
path: root/src/modules/mavlink/mavlink_orb_subscription.cpp
diff options
context:
space:
mode:
authorAnton Babushkin <anton.babushkin@me.com>2014-02-26 00:24:14 +0400
committerAnton Babushkin <anton.babushkin@me.com>2014-02-26 00:24:14 +0400
commite291af990fd9a4f447cbad2416b78d031cd33f5c (patch)
tree9ef863c24d110f91bd96771868a157671ccca0b3 /src/modules/mavlink/mavlink_orb_subscription.cpp
parent4e27fd9a381bd32ba5b79d275528ac19d1fb9442 (diff)
downloadpx4-firmware-e291af990fd9a4f447cbad2416b78d031cd33f5c.tar.gz
px4-firmware-e291af990fd9a4f447cbad2416b78d031cd33f5c.tar.bz2
px4-firmware-e291af990fd9a4f447cbad2416b78d031cd33f5c.zip
mavlink: adding message stream by name implemnted, mavlink streams definitions and formatters moved to mavlink_messages.h/cpp, mavlink_orb_listener class and thread removed
Diffstat (limited to 'src/modules/mavlink/mavlink_orb_subscription.cpp')
-rw-r--r--src/modules/mavlink/mavlink_orb_subscription.cpp23
1 files changed, 9 insertions, 14 deletions
diff --git a/src/modules/mavlink/mavlink_orb_subscription.cpp b/src/modules/mavlink/mavlink_orb_subscription.cpp
index 16044ef72..84ac11483 100644
--- a/src/modules/mavlink/mavlink_orb_subscription.cpp
+++ b/src/modules/mavlink/mavlink_orb_subscription.cpp
@@ -13,14 +13,13 @@
#include "mavlink_orb_subscription.h"
-MavlinkOrbSubscription::MavlinkOrbSubscription(const struct orb_metadata *meta, size_t size)
+MavlinkOrbSubscription::MavlinkOrbSubscription(const struct orb_metadata *topic, size_t size)
{
- this->meta = meta;
+ this->topic = topic;
this->data = malloc(size);
memset(this->data, 0, size);
- this->fd = orb_subscribe(meta);
+ this->fd = orb_subscribe(topic);
this->last_update = 0;
- this->interval = 0;
}
MavlinkOrbSubscription::~MavlinkOrbSubscription()
@@ -29,19 +28,15 @@ MavlinkOrbSubscription::~MavlinkOrbSubscription()
free(data);
}
-int MavlinkOrbSubscription::set_interval(const unsigned int interval)
-{
- this->interval = interval;
- return orb_set_interval(fd, interval);
-}
-
-int MavlinkOrbSubscription::update(const hrt_abstime t)
+bool MavlinkOrbSubscription::update(const hrt_abstime t)
{
if (last_update != t) {
bool updated;
orb_check(fd, &updated);
- if (updated)
- return orb_copy(meta, fd, data);
+ if (updated) {
+ orb_copy(topic, fd, data);
+ return true;
+ }
}
- return OK;
+ return false;
}