aboutsummaryrefslogtreecommitdiff
path: root/src/platforms/px4_publisher.h
diff options
context:
space:
mode:
authorThomas Gubler <thomasgubler@gmail.com>2015-01-22 08:10:08 +0100
committerThomas Gubler <thomasgubler@gmail.com>2015-01-22 08:10:08 +0100
commit2af44f5995dd121a7ce2aefd3ab1c7d8dcf3fb8d (patch)
treecef66b2fa679e225effa6d44b56cbda4a53f9966 /src/platforms/px4_publisher.h
parent2b103d319c8547d0d6e9ae14a6413a787051e205 (diff)
downloadpx4-firmware-2af44f5995dd121a7ce2aefd3ab1c7d8dcf3fb8d.tar.gz
px4-firmware-2af44f5995dd121a7ce2aefd3ab1c7d8dcf3fb8d.tar.bz2
px4-firmware-2af44f5995dd121a7ce2aefd3ab1c7d8dcf3fb8d.zip
multiplatform: introduce PublisherNode class for uorb for more consistency
Diffstat (limited to 'src/platforms/px4_publisher.h')
-rw-r--r--src/platforms/px4_publisher.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/platforms/px4_publisher.h b/src/platforms/px4_publisher.h
index 911554503..7195777f5 100644
--- a/src/platforms/px4_publisher.h
+++ b/src/platforms/px4_publisher.h
@@ -88,9 +88,25 @@ private:
ros::Publisher _ros_pub; /**< Handle to the ros publisher */
};
#else
+/**
+ * Because we maintain a list of publishers we need a node class
+ */
+class __EXPORT PublisherNode :
+ public ListNode<PublisherNode *>
+{
+public:
+ PublisherNode() :
+ ListNode()
+ {}
+
+ virtual ~PublisherNode() {}
+
+ virtual void update() = 0;
+};
+
class __EXPORT Publisher :
public PublisherBase,
- public ListNode<Publisher *>
+ public PublisherNode
{
public: