Blame view

JChatClient/doc/latex/client_8cpp.tex 5.76 KB
1
2
\hypertarget{client_8cpp}{\section{Referencia del Archivo /home/imanol/devel/eclipse/\-P\-A\-D/\-J\-Chat\-Client/src/client.cpp}
\label{client_8cpp}\index{/home/imanol/devel/eclipse/\-P\-A\-D/\-J\-Chat\-Client/src/client.\-cpp@{/home/imanol/devel/eclipse/\-P\-A\-D/\-J\-Chat\-Client/src/client.\-cpp}}
3
4
5
6
7
8
}


Fichero de implementación de un cliente.  
9
{\ttfamily \#include \char`\"{}client.\-h\char`\"{}}\\*
10
11
12
\subsection*{Funciones}
\begin{DoxyCompactItemize}
\item 
13
14
void \hyperlink{client_8cpp_ab99831172d1d4bca2c79bb37c7c062df}{kill\-Thread} (\hyperlink{structthread__args}{thread\-\_\-args} $\ast$t\-\_\-arg)
\begin{DoxyCompactList}\small\item\em Método de liberación de los argumentos. \end{DoxyCompactList}\item 
15
bool \hyperlink{client_8cpp_ab4a3d59d9d8c97b79cb3a6cb6a0e403c}{connect} (\hyperlink{class_socket}{Socket} \&s)
16
17
18
19
20
\begin{DoxyCompactList}\small\item\em Método de conexión. \end{DoxyCompactList}\item 
void $\ast$ \hyperlink{client_8cpp_a6511fc920cd92a0fe628df3f1a1f7e5a}{send\-Thread} (void $\ast$args)
\begin{DoxyCompactList}\small\item\em Thread de envío de mensajes. \end{DoxyCompactList}\item 
void $\ast$ \hyperlink{client_8cpp_abbdd974364b0dba7bb0524ab8f115a03}{recv\-Thread} (void $\ast$args)
\begin{DoxyCompactList}\small\item\em Thread de recepción de mensajes. \end{DoxyCompactList}\item 
21
22
int \hyperlink{client_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4}{main} ()
\begin{DoxyCompactList}\small\item\em Método principal del cliente. \end{DoxyCompactList}\end{DoxyCompactItemize}
23
24
25
26
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{client_8cpp_ab36823025f12a809217f7771125658c2}{connected}
27
\begin{DoxyCompactList}\small\item\em Variable de estado del programa. \end{DoxyCompactList}\item 
28
bool \hyperlink{client_8cpp_a9324389a5cdc532c6417a87ccafe18ce}{finished}
29
\begin{DoxyCompactList}\small\item\em Variable de estado del programa. \end{DoxyCompactList}\end{DoxyCompactItemize}
30
31
32
33
34
35
36
37
38


\subsection{Descripción detallada}
Fichero de implementación de un cliente. \begin{DoxyAuthor}{Autor}
Imanol Barba Sabariego 
\end{DoxyAuthor}
\begin{DoxyDate}{Fecha}
13/06/2013
\end{DoxyDate}
39
En este fichero se implementa un cliente para poder usar con el servidor creado, usando la clase \hyperlink{class_socket}{Socket}. R\-E\-V\-I\-S\-A\-D\-O E\-L 10/12/2013 P\-A\-R\-A L\-A A\-P\-L\-I\-A\-C\-\-N J\-C\-H\-A\-T 
40
41

\subsection{Documentación de las funciones}
42
43
44
45
46
47
48
\hypertarget{client_8cpp_ab4a3d59d9d8c97b79cb3a6cb6a0e403c}{\index{client.\-cpp@{client.\-cpp}!connect@{connect}}
\index{connect@{connect}!client.cpp@{client.\-cpp}}
\subsubsection[{connect}]{\setlength{\rightskip}{0pt plus 5cm}bool connect (
\begin{DoxyParamCaption}
\item[{{\bf Socket} \&}]{s}
\end{DoxyParamCaption}
)}}\label{client_8cpp_ab4a3d59d9d8c97b79cb3a6cb6a0e403c}
49
50
51
52
53
54
55


Método de conexión. 

Este método conecta el cliente a una sala de chat. \hypertarget{client_8cpp_ab99831172d1d4bca2c79bb37c7c062df}{\index{client.\-cpp@{client.\-cpp}!kill\-Thread@{kill\-Thread}}
\index{kill\-Thread@{kill\-Thread}!client.cpp@{client.\-cpp}}
\subsubsection[{kill\-Thread}]{\setlength{\rightskip}{0pt plus 5cm}void kill\-Thread (
56
\begin{DoxyParamCaption}
57
\item[{{\bf thread\-\_\-args} $\ast$}]{t\-\_\-arg}
58
\end{DoxyParamCaption}
59
)}}\label{client_8cpp_ab99831172d1d4bca2c79bb37c7c062df}
60
61
62
Método de liberación de los argumentos. 
63
64
Este método se encarga de liberar la memoria asignada a los argumentos pasados a los threads que ahora han terminado. \hypertarget{client_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4}{\index{client.\-cpp@{client.\-cpp}!main@{main}}
65
66
67
68
69
70
71
72
73
74
\index{main@{main}!client.cpp@{client.\-cpp}}
\subsubsection[{main}]{\setlength{\rightskip}{0pt plus 5cm}int main (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{client_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4}


Método principal del cliente. 
75
76
77
Este método inicializa el \hyperlink{class_socket}{Socket}, establece la conexión y realiza las acciones que se le hayan programado para comunicarse con el servidor. \hypertarget{client_8cpp_abbdd974364b0dba7bb0524ab8f115a03}{\index{client.\-cpp@{client.\-cpp}!recv\-Thread@{recv\-Thread}}
\index{recv\-Thread@{recv\-Thread}!client.cpp@{client.\-cpp}}
\subsubsection[{recv\-Thread}]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ recv\-Thread (
78
\begin{DoxyParamCaption}
79
80
81
82
83
84
85
86
87
88
89
90
\item[{void $\ast$}]{args}
\end{DoxyParamCaption}
)}}\label{client_8cpp_abbdd974364b0dba7bb0524ab8f115a03}


Thread de recepción de mensajes. 

Este método es ejecutado por un thread con el objetivo de recibir los mensajes por el socket, gestionarlos e imprimirlos por pantalla o tomar las medidas necesarias . \hypertarget{client_8cpp_a6511fc920cd92a0fe628df3f1a1f7e5a}{\index{client.\-cpp@{client.\-cpp}!send\-Thread@{send\-Thread}}
\index{send\-Thread@{send\-Thread}!client.cpp@{client.\-cpp}}
\subsubsection[{send\-Thread}]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ send\-Thread (
\begin{DoxyParamCaption}
\item[{void $\ast$}]{args}
91
\end{DoxyParamCaption}
92
93
)}}\label{client_8cpp_a6511fc920cd92a0fe628df3f1a1f7e5a}
94
95
96
97
Thread de envío de mensajes. 

Este método es ejecutado por un thread con el objetivo de enviar los mensajes y comandos que el usuario introduce por teclado. 
98
99
100
101
102

\subsection{Documentación de las variables}
\hypertarget{client_8cpp_ab36823025f12a809217f7771125658c2}{\index{client.\-cpp@{client.\-cpp}!connected@{connected}}
\index{connected@{connected}!client.cpp@{client.\-cpp}}
\subsubsection[{connected}]{\setlength{\rightskip}{0pt plus 5cm}bool connected}}\label{client_8cpp_ab36823025f12a809217f7771125658c2}
103
104
105
106


Variable de estado del programa. 
107
108
109
\hypertarget{client_8cpp_a9324389a5cdc532c6417a87ccafe18ce}{\index{client.\-cpp@{client.\-cpp}!finished@{finished}}
\index{finished@{finished}!client.cpp@{client.\-cpp}}
\subsubsection[{finished}]{\setlength{\rightskip}{0pt plus 5cm}bool finished}}\label{client_8cpp_a9324389a5cdc532c6417a87ccafe18ce}
110
111
112
113


Variable de estado del programa.