\section{DNSSD::Remote\-Service Class Reference}
\label{classDNSSD_1_1RemoteService}\index{DNSSD::RemoteService@{DNSSD::RemoteService}}
{\bf Remote\-Service}{\rm (p.\,\pageref{classDNSSD_1_1RemoteService})} class allows to resolve service announced on remote machine. class representing service announced on remote machine.  


{\tt \#include $<$remoteservice.h$>$}

Inheritance diagram for DNSSD::Remote\-Service:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=109pt]{classDNSSD_1_1RemoteService__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for DNSSD::Remote\-Service:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=155pt]{classDNSSD_1_1RemoteService__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{CompactItemize}
\item 
typedef KShared\-Ptr$<$ {\bf Remote\-Service} $>$ {\bf Ptr}\label{classDNSSD_1_1RemoteService_w0}

\end{CompactItemize}
\subsection*{Signals}
\begin{CompactItemize}
\item 
void {\bf resolved} (bool)
\end{CompactItemize}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
{\bf Remote\-Service} (const {\bf QString} \&label)
\item 
{\bf Remote\-Service} (const {\bf QString} \&{\bf name}, const {\bf QString} \&type, const {\bf QString} \&domain)
\item 
void {\bf resolve\-Async} ()
\item 
bool {\bf resolve} ()
\item 
bool {\bf is\-Resolved} () const 
\end{CompactItemize}
\subsection*{Protected Member Functions}
\begin{CompactItemize}
\item 
virtual void {\bf virtual\_\-hook} (int id, void $\ast$data)\label{classDNSSD_1_1RemoteService_b0}

\item 
virtual void {\bf custom\-Event} ({\bf QCustom\-Event} $\ast${\bf event})\label{classDNSSD_1_1RemoteService_b1}

\end{CompactItemize}
\subsection*{Friends}
\begin{CompactItemize}
\item 
KDNSSD\_\-EXPORT {\bf QData\-Stream} \& {\bf operator$<$$<$} ({\bf QData\-Stream} \&s, const {\bf Remote\-Service} \&a)\label{classDNSSD_1_1RemoteService_n0}

\item 
KDNSSD\_\-EXPORT {\bf QData\-Stream} \& {\bf operator$>$$>$} ({\bf QData\-Stream} \&s, {\bf Remote\-Service} \&a)\label{classDNSSD_1_1RemoteService_n1}

\end{CompactItemize}


\subsection{Detailed Description}
{\bf Remote\-Service}{\rm (p.\,\pageref{classDNSSD_1_1RemoteService})} class allows to resolve service announced on remote machine. class representing service announced on remote machine. 

In most cases objects of this class are created by {\bf Service\-Browser}{\rm (p.\,\pageref{classDNSSD_1_1ServiceBrowser})}, but it is not required. Only fields valid before service is resolved are name, type.and domain.

\begin{Desc}
\item[Author:]Jakub Stachowski \end{Desc}




Definition at line 41 of file remoteservice.h.

\subsection{Constructor \& Destructor Documentation}
\index{DNSSD::RemoteService@{DNSSD::Remote\-Service}!RemoteService@{RemoteService}}
\index{RemoteService@{RemoteService}!DNSSD::RemoteService@{DNSSD::Remote\-Service}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DNSSD::Remote\-Service::Remote\-Service (const {\bf QString} \& {\em label})}\label{classDNSSD_1_1RemoteService_a0}


Creates unresolved service from given DNS label. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em label}]Data returned by PTR query - it is decoded into name, type and domain\end{description}
\end{Desc}


Definition at line 58 of file remoteservice.cpp.

References DNSSD::Service\-Base::decode().\index{DNSSD::RemoteService@{DNSSD::Remote\-Service}!RemoteService@{RemoteService}}
\index{RemoteService@{RemoteService}!DNSSD::RemoteService@{DNSSD::Remote\-Service}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}DNSSD::Remote\-Service::Remote\-Service (const {\bf QString} \& {\em name}, const {\bf QString} \& {\em type}, const {\bf QString} \& {\em domain})}\label{classDNSSD_1_1RemoteService_a1}


Creates unresolved remote service with given name, type and domain. 



Definition at line 63 of file remoteservice.cpp.

\subsection{Member Function Documentation}
\index{DNSSD::RemoteService@{DNSSD::Remote\-Service}!resolveAsync@{resolveAsync}}
\index{resolveAsync@{resolveAsync}!DNSSD::RemoteService@{DNSSD::Remote\-Service}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void DNSSD::Remote\-Service::resolve\-Async ()}\label{classDNSSD_1_1RemoteService_a3}


Resolves host name and port of service. 

Host name is not resolved into numeric address - use KResolver for that. Signal {\bf resolved(bool)}{\rm (p.\,\pageref{classDNSSD_1_1RemoteService_l0})} will be emitted when finished or even before return of this function - in case of immediate failure.

Definition at line 82 of file remoteservice.cpp.

References QString::ascii(), resolved(), and QString::utf8().

Referenced by resolve().\index{DNSSD::RemoteService@{DNSSD::Remote\-Service}!resolve@{resolve}}
\index{resolve@{resolve}!DNSSD::RemoteService@{DNSSD::Remote\-Service}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool DNSSD::Remote\-Service::resolve ()}\label{classDNSSD_1_1RemoteService_a4}


Synchronous version of {\bf resolve\-Async()}{\rm (p.\,\pageref{classDNSSD_1_1RemoteService_a3})}. 

Note that {\bf resolved(bool)}{\rm (p.\,\pageref{classDNSSD_1_1RemoteService_l0})} is emitted before this function returns, \begin{Desc}
\item[Returns:]TRUE is successful\end{Desc}


Definition at line 74 of file remoteservice.cpp.

References resolve\-Async().\index{DNSSD::RemoteService@{DNSSD::Remote\-Service}!isResolved@{isResolved}}
\index{isResolved@{isResolved}!DNSSD::RemoteService@{DNSSD::Remote\-Service}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool DNSSD::Remote\-Service::is\-Resolved () const}\label{classDNSSD_1_1RemoteService_a5}


Returns true if service has been successfully resolved. 



Definition at line 96 of file remoteservice.cpp.\index{DNSSD::RemoteService@{DNSSD::Remote\-Service}!resolved@{resolved}}
\index{resolved@{resolved}!DNSSD::RemoteService@{DNSSD::Remote\-Service}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void DNSSD::Remote\-Service::resolved (bool)\hspace{0.3cm}{\tt  [signal]}}\label{classDNSSD_1_1RemoteService_l0}


Emitted when resolving is complete. 

Parameter is set to TRUE if it was successful. If operating in asynchronous mode this signal can be emitted several times (when service change)

Referenced by resolve\-Async().

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
remoteservice.h\item 
remoteservice.cpp\end{CompactItemize}
