• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • dnssd
 

dnssd

publicservice.h
00001 /* This file is part of the KDE project
00002  *
00003  * Copyright (C) 2004, 2005 Jakub Stachowski <qbast@go2.pl>
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Library General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2 of the License, or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Library General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Library General Public License
00016  * along with this library; see the file COPYING.LIB.  If not, write to
00017  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00018  * Boston, MA 02110-1301, USA.
00019  */
00020 
00021 #ifndef DNSSDPUBLICSERVICE_H
00022 #define DNSSDPUBLICSERVICE_H
00023 
00024 #include <tqobject.h>
00025 #include <dnssd/servicebase.h>
00026 #ifdef HAVE_DNSSD
00027 #include <avahi-client/client.h>
00028 #else
00029 #define AvahiClientState void*
00030 #endif
00031 
00032 class KURL;
00033 namespace DNSSD
00034 {
00035 class PublicServicePrivate;
00036 
00061 class KDNSSD_EXPORT PublicService : public TQObject, public ServiceBase
00062 {
00063     Q_OBJECT
00064 public:
00073     PublicService(const TQString& name=TQString::null,const TQString& type=TQString::null,
00074               unsigned int port=0,const TQString& domain=TQString::null);
00075 
00076     ~PublicService();
00077     
00082     void stop();
00083     
00088     bool publish();
00089     
00093     bool isPublished() const;
00094     
00100     void publishAsync();
00101 
00105     void setTextData(const TQMap<TQString,TQString>& textData);
00106     
00110     void setServiceName(const TQString& serviceName);
00111     
00116     void setType(const TQString& type);
00117 
00121     void setPort(unsigned short port); 
00122     
00127     void setDomain(const TQString& domain);
00128     
00135     const KURL toInvitation(const TQString& host=TQString::null);
00136 
00137 signals:
00142     void published(bool);
00143 private:
00144     PublicServicePrivate *d;
00145     bool fillEntryGroup();
00146     void tryApply();
00147 private slots:
00148     void clientState(AvahiClientState);
00149 
00150 protected:
00151     virtual void customEvent(TQCustomEvent* event);
00152     virtual void virtual_hook(int, void*);
00153 };
00154 
00155 
00156 }
00157 
00158 #endif

dnssd

Skip menu "dnssd"
  • Main Page
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members
  • Related Pages

dnssd

Skip menu "dnssd"
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • krandr
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for dnssd by doxygen 1.7.6.1
This website is maintained by Timothy Pearson.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. |