diff options
Diffstat (limited to 'Swiften/LinkLocal/DNSSDService.h')
-rw-r--r-- | Swiften/LinkLocal/DNSSDService.h | 27 |
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; + }; +} |