summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2009-07-16 16:46:22 (GMT)
committerRemko Tronçon <git@el-tramo.be>2009-07-16 16:46:22 (GMT)
commita5afa80ca54da1b72078b3e508de1d80cceb0c90 (patch)
treeda8c779686e0fef9095e03d19ace1d0f7d3ddc25 /Swiften/LinkLocal/DNSSDService.h
parent3adeaee96ab80cc6552798ad3f5812e934b45677 (diff)
downloadswift-contrib-a5afa80ca54da1b72078b3e508de1d80cceb0c90.zip
swift-contrib-a5afa80ca54da1b72078b3e508de1d80cceb0c90.tar.bz2
Created Swiften/LinkLocal module.
Diffstat (limited to 'Swiften/LinkLocal/DNSSDService.h')
-rw-r--r--Swiften/LinkLocal/DNSSDService.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/Swiften/LinkLocal/DNSSDService.h b/Swiften/LinkLocal/DNSSDService.h
new file mode 100644
index 0000000..0899ffd
--- /dev/null
+++ b/Swiften/LinkLocal/DNSSDService.h
@@ -0,0 +1,27 @@
+#pragma once
+
+#include <boost/signal.hpp>
+#include <map>
+
+#include "Swiften/Base/String.h"
+
+namespace Swift {
+ class DNSSDService {
+ public:
+ struct DiscoveredService {
+ String name;
+ String type;
+ String domain;
+ int networkInterface;
+ };
+
+ virtual ~DNSSDService();
+
+ virtual void publishService(const std::map<String,String> properties) = 0;
+ virtual void start() = 0;
+
+ boost::signal<void (const DiscoveredService&)> onServiceAdded;
+ boost::signal<void (const DiscoveredService&)> onServiceRemoved;
+ boost::signal<void ()> onServiceRegistered;
+ };
+}