Page principale | Liste des fichiers | Portée globale

Référence du fichier reseau.c

fonctions reseau Plus de détails...

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/wait.h>
#include <signal.h>
#include <netdb.h>
#include <pthread.h>
#include <ncurses.h>
#include "reseau.h"
#include "affichage.h"
#include "jeu.h"

Graphe des dépendances par inclusion de reseau.c:

Aller au code source de ce fichier.

Macros

#define PORTECOUTE   1664
 Port en écoute pour le serveur.
#define MAXDATASIZE   200
 Quantité max d'octets que l'on peut envoyer/recevoir.
#define MAXCONNECT   1
 Nombre max de connection que le serveur accepte d'un coup.

Fonctions

void config_reseau ()
 Configuration du socket réseau, utilise le socket en variable globale.
void send_shoot (char *objective)
 Envoi un tir a l'adversaire via le réseau.
void send_rep_shoot (int result)
 Renvoi la réponse à un tir reçu.
void recv_msg ()
 Reception des messages sur le socket, la fonction tourne en boucle et écoute le socket puis traite le message recu.
void send_msg ()
 Envoi des messages sur le socket. Fonction appelée dans un thread, elle tourne en boucle et récupére la saisie clavier pour l'analyser et l'envoyer si besoin.
int client (int IP)
 Client : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal.
int serveur ()
 Serveur : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal.

Variables

WINDOW * fenetre_chat
 fenetre ncurse pour l'affichage du chat
char tab_message [9][200]
 Tableau contenant les messages du chat.
bool quitter = false
 Variable mise a vrai pour quiter le jeu.
int socket_fd
 Identifiant du socket réseau.


Description détaillée

fonctions reseau

établissement des connexions, boucle dans l'envoi et la réception des messages, envoi et recoit les tirs

Auteur:
D.Bernaudeau

J. Vehent

Définition dans le fichier reseau.c.


Documentation des macros

#define MAXCONNECT   1
 

Nombre max de connection que le serveur accepte d'un coup.

Définition à la ligne 54 du fichier reseau.c.

Référencé par serveur().

#define MAXDATASIZE   200
 

Quantité max d'octets que l'on peut envoyer/recevoir.

Définition à la ligne 48 du fichier reseau.c.

#define PORTECOUTE   1664
 

Port en écoute pour le serveur.

Définition à la ligne 42 du fichier reseau.c.

Référencé par client(), et serveur().


Documentation des fonctions

int client int  IP  ) 
 

Client : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal.

Paramètres:
[in] IP l'adresse IP du serveur a contacter

Définition à la ligne 330 du fichier reseau.c.

Références config_reseau(), fenetre_chat, init_chat(), init_matrices(), init_screen(), PORTECOUTE, recv_msg(), send_msg(), socket_fd, et tab_message.

Référencé par main().

Voici le graphe d'appel pour cette fonction:

void config_reseau  ) 
 

Configuration du socket réseau, utilise le socket en variable globale.

Définition à la ligne 86 du fichier reseau.c.

Références socket_fd.

Référencé par client(), et serveur().

void recv_msg  ) 
 

Reception des messages sur le socket, la fonction tourne en boucle et écoute le socket puis traite le message recu.

Définition à la ligne 155 du fichier reseau.c.

Références adv_go(), afficher_erreur(), fenetre_chat, MAXDATASIZE, quitter, recv_shoot(), rep_shoot(), saisie(), shoot(), socket_fd, et tab_message.

Référencé par client(), et serveur().

Voici le graphe d'appel pour cette fonction:

void send_msg  ) 
 

Envoi des messages sur le socket. Fonction appelée dans un thread, elle tourne en boucle et récupére la saisie clavier pour l'analyser et l'envoyer si besoin.

Définition à la ligne 214 du fichier reseau.c.

Références afficher_erreur(), effacer_erreur(), fenetre_chat, interpretation(), MAXDATASIZE, quitter, saisie(), socket_fd, et tab_message.

Référencé par client(), et serveur().

Voici le graphe d'appel pour cette fonction:

void send_rep_shoot int  result  ) 
 

Renvoi la réponse à un tir reçu.

Paramètres:
[in] result un entier correspondant a l'état de la case visée

Définition à la ligne 140 du fichier reseau.c.

Références socket_fd.

Référencé par recv_shoot().

void send_shoot char *  objective  ) 
 

Envoi un tir a l'adversaire via le réseau.

Paramètres:
[in] objective chaine de caractère contenant les coordonnées de la case adverse visée

Définition à la ligne 127 du fichier reseau.c.

Références socket_fd.

Référencé par shoot().

int serveur  ) 
 

Serveur : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal.

Définition à la ligne 435 du fichier reseau.c.

Références config_reseau(), fenetre_chat, init_chat(), init_matrices(), init_screen(), MAXCONNECT, PORTECOUTE, recv_msg(), send_msg(), socket_fd, et tab_message.

Référencé par main().

Voici le graphe d'appel pour cette fonction:


Documentation des variables

fenetre_chat
 

fenetre ncurse pour l'affichage du chat

Définition à la ligne 62 du fichier reseau.c.

Référencé par client(), init_chat(), recv_msg(), send_msg(), et serveur().

quitter = false
 

Variable mise a vrai pour quiter le jeu.

Définition à la ligne 74 du fichier reseau.c.

Référencé par recv_msg(), et send_msg().

socket_fd
 

Identifiant du socket réseau.

Définition à la ligne 80 du fichier reseau.c.

Référencé par client(), config_reseau(), recv_msg(), send_msg(), send_rep_shoot(), send_shoot(), et serveur().

tab_message
 

Tableau contenant les messages du chat.

Définition à la ligne 68 du fichier reseau.c.

Référencé par client(), recv_msg(), send_msg(), et serveur().


Généré le Sun Apr 30 17:46:01 2006 pour SeaBattle par  doxygen 1.4.4