Page principale | Liste des classes | Membres de classe

Référence de la classe Socket

Classe implémentant le Socket Client. Plus de détails...

#include <Socket.h>

Liste de tous les membres

Fonctions membres publiques

 Socket (void)
 Constructeur par défaut.
 Socket (const char *, int)
 Constructeur par intialisation.
 Socket (const char *, int, const char *, int)
 Constructeur par intialisation.
 Socket (SocketImpl)
 Constructeur par intialisation.
 Socket (const Socket &)
 Constructeur par copie.
 ~Socket ()
 Destructeur.
void connect (const char *, int)
 Connecte le Socket au port et à l'host spécifié.
void bind (const char *, int)
 Affecte un port au socket Client sur l'hôte et le port spécifié.
int getPort (void)
 Retourne le port de l'hôte distant sur lequel la connection est établi.
int getLocalPort (void)
 Retourne le port de l'hôte local sur lequel la connection est établi.
int available (void)
 teste le contenu du buffer de reception à l'instant t du socket Client
int bavailable (void)
 teste le contenu du buffer de reception d'un socket client, et attend si celui-ci est vide.
const char * getLocalAddress (void)
 Retourne l'adresse IP de l'hôte local.
const char * getConnectAddress (void)
 Retourne l'adresse IP de l'hôte distant.
void close (void)
 Ferme le Socket.
int send (char *, int)
 Recois des données par la connection établie.
int recv (char *, int)
 Recois des données par la connection établie.
std::vector< char > recv_v (void)
 Recois des données par la connection établie.
int isBound (void)
 Teste si le socket est "boundé".
int isClosed (void)
 Teste si le socket est fermé.
int isConnected (void)
 Teste si le socket est connecté.
int getKeepAlive (void)
 test si SO_KEEPALIVE est activé
void setKeepAlive (bool)
 Active/désactive SO_KEEPALIVE.
int getReceiveBufferSize (void)
 retourne la taille du buffer de réception du Socket Client
void setReceiveBufferSize (int)
 modifie la taille du buffer de reception du Socket Client
int getSendBufferSize (void)
 retourne la taille du buffer d'envoi du socket Client
void setSendBufferSize (int)
 modifie la taille du buffer d'envoie du Socket Client
int getReuseAddress (void)
 Teste si SO_REUSEADDR est activé.
void setReuseAddress (bool)
 Active/Désactive SO_REUSEADDR.
int getOOBInline (void)
 Teste si SO_OOBINLINE est activé.
void setOOBInline (bool)
 Active/Désactive SO_OOBINLINE.
Socketoperator<< (int)
 surcharge de l'opérateur "<<" permettant d'enoyer des données de type(int) dans le canal de communication du socket.
Socketoperator<< (char)
 surcharge de l'opérateur "<<" permettant d'envoyer des données de type (char) dans le canal de communication du socket.
Socketoperator<< (std::string)
 surcharge de l'opérateur "<<" permettant d'envoyer des données de type (string) dans le canal de communication du socket.
Socketoperator>> (int &)
 surcharge de l'operateur ">>" permettant de recevoir et de stocker des donnée de type (int) provenant du canal de communication du socket.
Socketoperator>> (char &)
 surcharge de l'opérateur ">>" permettant de recevoir et de stocker des donnée de type (char) provenant du canal de communication du socket.
Socketoperator>> (std::string &)
 surcharge de l'opérateur ">>" permettant de recevoir et de stocker des données de type (string) provenant du canal de communication du socket.


Description détaillée

Classe implémentant le Socket Client.

La classe Socket permet d'implementé des sockets Clients servant à etablir des connections avec des Serveurs de socket.

Auteur:
Mercier Jonathan
Version:
1.0, 13/02/2006


Documentation des contructeurs et destructeur

Socket::Socket void   ) 
 

Constructeur par défaut.

Crée un Socket non connecté auquel aucun port n'a été affecté

Exceptions:
SocketException ERRCREAT,ERRSTATUS,ERRNONE.

Socket::Socket const char *  host,
int  port
 

Constructeur par intialisation.

Crée et connecte le socket Client à l'host et au port spécifié

Paramètres:
host hote ou IP auquel le socket doit se connecter
port numéro du port auquel le client doit se connecter
Exceptions:
SocketException ERRCREAT, ERRCLOSE, ERRSTATUS, ERRNONE, ERRCONNECT.

Socket::Socket const char *  host,
int  port,
const char *  localhost,
int  localport
 

Constructeur par intialisation.

Crée un Socket Client et l'affecte à l'adresse et au port spécifié. Celui-ci est ensuite connecté à un machine distante dont l'adresse et le port passé également en paramètre.

Paramètres:
host nom ou IP de l'hote auquel le socket doit se connecter
port numéro du port auquel le socket doit se connecter
localhost nom ou IP de l'hote auquel le socket doit se "boundé"
localport numéro du port auquel le socket doit se "boundé"
Exceptions:
SocketException ERRCREAT, ERRCLOSE, ERRSTATUS, ERRNONE, ERRCONNECT, ERRBIND.

Socket::Socket SocketImpl  s  ) 
 

Constructeur par intialisation.

Crée un Socket Client avec une configuration précisé dans l'objet s de type SocketImpl

Paramètres:
s configuration du socket Client par défaut

Socket::Socket const Socket s  ) 
 

Constructeur par copie.

Copie un Socket

Paramètres:
s Original du socket Client que l'on veut copier


Documentation des fonctions membres

int Socket::available void   ) 
 

teste le contenu du buffer de reception à l'instant t du socket Client

Ne modifie pas le contenu.

Renvoie:
le nombre d'octet de donnée présent dans le buffer.
Exceptions:
SocketException ERRIO, ERRSTATUS, ERRNONE

int Socket::bavailable void   ) 
 

teste le contenu du buffer de reception d'un socket client, et attend si celui-ci est vide.

Attend Tant qu'il n'y a rien dans le buffer de réception du socket Client. Ne modifie pas le contenu du buffer.

Renvoie:
le nombre d'octet de donnée présent dans le buffer.
Avertissement:
Fonction Bloquante
Exceptions:
SocketException ERRIO, ERRSTATUS, ERRNONE

void Socket::bind const char *  host,
int  port
 

Affecte un port au socket Client sur l'hôte et le port spécifié.

Paramètres:
host nom ou IP de l'hôte sur lequel on veut affecter un port
port port local auquel le Socket doit être affecté
Exceptions:
SocketException ERRSTATUS, ERRNONE, ERRBIND.

void Socket::close void   ) 
 

Ferme le Socket.

Avertissement:
Après cet appel le socket devient inutilisable !
Exceptions:
SocketException ERRCLOSE, ERRSTATUS, ERRNONE

void Socket::connect const char *  host,
int  port
 

Connecte le Socket au port et à l'host spécifié.

Paramètres:
host nom ou IP de l'hôte auquel on veut se connecter
port numero du port auquel on veut se connecter
Exceptions:
SocketException ERRSTATUS, ERRNONE, ERRCONNECT

int Socket::getKeepAlive void   ) 
 

test si SO_KEEPALIVE est activé

Renvoie:
1 si SO_KEEPALIVE est activé, 0 sinon
desactivé par défaut

int Socket::getOOBInline void   ) 
 

Teste si SO_OOBINLINE est activé.

Renvoie:
1 si SO_OOBINLINE est activé, 0 sinon
desactivé par défaut.
Exceptions:
SocketException ERRSTATUS.

int Socket::getReceiveBufferSize void   ) 
 

retourne la taille du buffer de réception du Socket Client

Renvoie:
la taille du buffer de réception

int Socket::getReuseAddress void   ) 
 

Teste si SO_REUSEADDR est activé.

Renvoie:
1 si SO_REUSEADDR est activé, 0 sinon
desactivé par défaut
Exceptions:
SocketException ERRSTATUS.

int Socket::getSendBufferSize void   ) 
 

retourne la taille du buffer d'envoi du socket Client

Renvoie:
la taille du buffer d'envoi
Exceptions:
SocketException ERRSTATUS.

int Socket::isBound void   ) 
 

Teste si le socket est "boundé".

Renvoie:
1 si le socket est "boundé", 0 sinon

int Socket::isClosed void   ) 
 

Teste si le socket est fermé.

Renvoie:
1 si le socket est fermé, 0 sinon

int Socket::isConnected void   ) 
 

Teste si le socket est connecté.

Renvoie:
1 si le socket est connecté, 0 sinon

Socket & Socket::operator<< std::string  chaine  ) 
 

surcharge de l'opérateur "<<" permettant d'envoyer des données de type (string) dans le canal de communication du socket.

Paramètres:
chaine donnée qui sera envoyée
Renvoie:
Le socket courant pour permettre l'enchainement des instructions
Exceptions:
SocketException ERRIO, ERRSTATUS.

Socket & Socket::operator<< char  c  ) 
 

surcharge de l'opérateur "<<" permettant d'envoyer des données de type (char) dans le canal de communication du socket.

Paramètres:
c donnée qui sera envoyée
Renvoie:
Le socket courant pour permettre l'enchainement des instructions
Exceptions:
SocketException ERRIO, ERRSTATUS.

Socket & Socket::operator<< int  i  ) 
 

surcharge de l'opérateur "<<" permettant d'enoyer des données de type(int) dans le canal de communication du socket.

Paramètres:
i donnée qui sera envoyée
Renvoie:
Le socket courant pour permettre l'enchainement des instructions
Exceptions:
SocketException ERRIO, ERRSTATUS.

Socket & Socket::operator>> std::string &  chaine  ) 
 

surcharge de l'opérateur ">>" permettant de recevoir et de stocker des données de type (string) provenant du canal de communication du socket.

Paramètres:
chaine donnée référencée dans laquelle sera socké ce qui sera lu.
Renvoie:
Le socket courant pour permettre l'enchainement des instructions
Avertissement:
Cette méthode est destiné a lire jusqu'au retour chariot, si elle ne le trouve pas dans le buffer, elle produira une exception.
Exceptions:
SocketException ERRIO, ERRSTATUS.

Socket & Socket::operator>> int &  i  ) 
 

surcharge de l'operateur ">>" permettant de recevoir et de stocker des donnée de type (int) provenant du canal de communication du socket.

Paramètres:
i donnée référencée dans laquelle sera stocké ce qui sera lu.
Renvoie:
Le Socket courant pour permettre l'enchainement des instructions
Exceptions:
SocketException ERRIO, ERRSTATUS.

vector< char > Socket::recv_v void   ) 
 

Recois des données par la connection établie.

Renvoie:
les données présent dans le buffer dusocket sous forme d'un vecteur de (char).
Avertissement:
le type "vector" utilisé est celui de la librairie STL.
Exceptions:
SocketException ERRIO, ERRSTATUS.

void Socket::setKeepAlive bool  interrupteur  ) 
 

Active/désactive SO_KEEPALIVE.

Paramètres:
interrupteur true active / false désactive

void Socket::setOOBInline bool  interrupteur  ) 
 

Active/Désactive SO_OOBINLINE.

Paramètres:
interrupteur 1 active / 0 désactive
Exceptions:
SocketException ERRSTATUS.

void Socket::setReceiveBufferSize int  taille  ) 
 

modifie la taille du buffer de reception du Socket Client

Avertissement:
Attention, la taille entrée ne correpondra pas à la taille réelle du buffer. En effet le noyau se réserve la moitié du buffer de réception. Par exemple on rentre une taille de 40000 octets, le buffer aura une taille de 80000 octets. 40000 octets por l'utilisateur et 40000 octets pour le noyau. De toutes manières, la taille entrée vous sera reservé, il faut juste pensé qu'elle sera double lors de l'appelle à getReceiveBufferSize().
Paramètres:
taille Nouvelle taille du buffer de réception.
Exceptions:
SocketException ERRSTATUS.

void Socket::setReuseAddress bool  interrupteur  ) 
 

Active/Désactive SO_REUSEADDR.

Paramètres:
interrupteur 1 active / 0 desactive
Exceptions:
SocketException ERRSTATUS.

void Socket::setSendBufferSize int  taille  ) 
 

modifie la taille du buffer d'envoie du Socket Client

Voir également:
setReceiveBufferSize()
Paramètres:
taille Nouvelle taille du buffer d'envoi
Exceptions:
SocketException ERRSTATUS.


La documentation de cette classe a été générée à partir des fichiers suivants:
Généré le Mon Mar 6 21:27:18 2006 pour libPTS++ par  doxygen 1.4.4