Page principale | Liste alphabétique | Liste des classes | Liste des fichiers | Membres de classe | Membres de fichier | Pages associées

Référence de la classe NetConnect

Informations sur une connection. Plus de détails...

#include <NetConnect.h>

Liste de tous les membres

Fonctions membres publiques

 NetConnect (unsigned int iCrypt=NET_T_NORMAL)
 ~NetConnect ()
unsigned int GetId ()
 Retourne l'Id.
const char * GetIp ()
 Retourne l'ip.
unsigned int GetPort ()
 Retourne le port.
const char * GetBuffer ()
 Retourne le buffer.
unsigned int GetBufferSize ()
 Retourne la taille buffer.
void BinSend (const char *pBuffer, unsigned int iSize)
 Envoie des données binaire.
void Send (const char *pBuffer,...)
 Envoie les données.
void Receive ()
 Recoit les données.

Attributs publics

SOCKET sock
SOCKADDR_IN sockName
unsigned int port
string ip
THREAD thread
unsigned int crypt


Description détaillée

Informations réseau et système sur une connection.

Définition à la ligne 36 du fichier NetConnect.h.


Documentation des contructeurs et destructeur

NetConnect::NetConnect unsigned int  iCrypt = NET_T_NORMAL  ) 
 

Initialise la connection.

Paramètres:
iCrypt type de conenction ( NET_T_NORMAL ou NET_T_SSL )

Définition à la ligne 15 du fichier NetConnect.cpp.

Références crypt, ip, port, et sock.

00016 {
00017     id          = ++idMax;
00018     sock        = 0;
00019     ip          = NET_DEF_IP;
00020     port        = NET_DEF_PORT;
00021     bufferSize  = 0;
00022     *buffer     = '\0';
00023 #if USE_SSL == 1
00024     sslFD       = NULL;
00025 #endif
00026     crypt       = iCrypt;
00027 }

NetConnect::~NetConnect  ) 
 

Libère la mémoire proprement

Définition à la ligne 29 du fichier NetConnect.cpp.

00030 {
00031 
00032 }


Documentation des fonctions membres

void NetConnect::BinSend const char *  pBuffer,
unsigned int  iSize
 

Envoie des données binaire à iP.

Paramètres:
pBuffer données
iSize Taille des données

Définition à la ligne 34 du fichier NetConnect.cpp.

Références CATCH, crypt, sock, THROW, et TRY.

Référencé par NetClient::BinSend(), Send(), et NetClient::Send().

00035 {
00036     unsigned int    sizeSend = 0;
00037     TRY
00038 
00039     if(sock <= 0)
00040         THROW(ERROR_C_CONNECT)
00041 
00042 #if USE_SSL == 1
00043     if(crypt == NET_T_SSL)
00044         sizeSend = SSL_write(sslFD, pBuffer, iSize);
00045     else
00046 #endif
00047         sizeSend = send(sock, pBuffer, iSize, 0);
00048 
00049     if(sizeSend != iSize)
00050         THROW(ERROR_C_SEND)
00051 
00052     CATCH
00053 }

const char* NetConnect::GetBuffer  )  [inline]
 

Retourne le buffer de données Buffer.

Renvoie:
Pointeur sur le buffer.

Définition à la ligne 96 du fichier NetConnect.h.

Référencé par NetClient::GetBuffer().

00097     {
00098         return buffer;
00099     };

unsigned int NetConnect::GetBufferSize  )  [inline]
 

Retourne la taille buffer de données Buffer.

Renvoie:
Taille du buffer BufferSize.

Définition à la ligne 105 du fichier NetConnect.h.

Référencé par NetClient::GetBufferSize().

00106     {
00107         return bufferSize;
00108     };

unsigned int NetConnect::GetId  )  [inline]
 

Retourne l'Id Id du client.

Renvoie:
Id du client.

Définition à la ligne 69 du fichier NetConnect.h.

00070     {
00071         return id;
00072     };

const char* NetConnect::GetIp  )  [inline]
 

Retourne l'ip de la connection.

Renvoie:
pointeur sur l'ip.

Définition à la ligne 78 du fichier NetConnect.h.

Référencé par NetClient::GetIp().

00079     {
00080         return ip.data();
00081     };

unsigned int NetConnect::GetPort  )  [inline]
 

Retourne le port de la connection.

Renvoie:
port de la connection.

Définition à la ligne 87 du fichier NetConnect.h.

Référencé par NetClient::GetPort().

00088     {
00089         return port;
00090     };

void NetConnect::Receive  ) 
 

Recoit les données Buffer depuis Ip.

Définition à la ligne 67 du fichier NetConnect.cpp.

Références CATCH, crypt, NET_BUFFER, sock, THROW, et TRY.

Référencé par NetClient::Receive().

00068 {
00069     unsigned int        sizeRecv;
00070     TRY
00071 
00072     if(sock <= 0)
00073         THROW(ERROR_C_CONNECT)
00074 
00075     memset(buffer, 0, NET_BUFFER);
00076 
00077 #if USE_SSL == 1
00078     if(crypt == NET_T_SSL)
00079         sizeRecv = SSL_read(sslFD, buffer, NET_BUFFER);
00080     else
00081 #endif
00082         sizeRecv = recv(sock, buffer, NET_BUFFER, 0);
00083 
00084     if(sizeRecv <= 0)
00085         THROW(ERROR_C_RECEIVE)
00086 
00087     bufferSize = sizeRecv;
00088 
00089     CATCH
00090 }

void NetConnect::Send const char *  pBuffer,
  ...
 

Envoie les données à Ip.

Paramètres:
pBuffer chaine construite comme pour printf.
... argument pour construire la chaine

Définition à la ligne 55 du fichier NetConnect.cpp.

Références BinSend().

00056 {
00057     char    temp[NET_BUFFER];
00058     va_list args;
00059 
00060     va_start(args, pBuffer);
00061     vsprintf(temp, pBuffer, args);
00062     va_end(args);
00063 
00064     BinSend(temp, strlen(temp));
00065 }


Documentation des données membres

unsigned int NetConnect::crypt
 

Cryptage activé.

Définition à la ligne 50 du fichier NetConnect.h.

Référencé par BinSend(), NetConnect(), Receive(), NetClient::Start(), et NetClient::Stop().

string NetConnect::ip
 

IP de connection.

Définition à la ligne 48 du fichier NetConnect.h.

Référencé par NetServer::KillClient(), NetServer::KillClientNo(), NetConnect(), NetClient::Start(), et NetServer::WaitClient().

unsigned int NetConnect::port
 

Port de connection.

Définition à la ligne 47 du fichier NetConnect.h.

Référencé par NetConnect(), NetServer::Start(), et NetClient::Start().

SOCKET NetConnect::sock
 

Socket de connection.

Définition à la ligne 45 du fichier NetConnect.h.

Référencé par BinSend(), NetConnect(), Receive(), NetServer::Start(), NetClient::Start(), NetClient::Stop(), et NetServer::WaitClient().

SOCKADDR_IN NetConnect::sockName
 

Information sur le socket.

Définition à la ligne 46 du fichier NetConnect.h.

Référencé par NetServer::Start(), NetClient::Start(), et NetServer::WaitClient().

THREAD NetConnect::thread
 

Thread de la connection (serveur multitache).

Définition à la ligne 49 du fichier NetConnect.h.


La documentation de cette classe a été générée à partir des fichiers suivants:
Généré le Thu Jun 12 09:12:30 2008 pour A.I.F. par  doxygen 1.3.9.1