Page principale | Hiérarchie des classes | Liste alphabétique | Liste des classes | Liste des fichiers | Membres de classe | Membres de fichier

NetRequest.cpp

00001 /*! \file NetRequest.cpp
00002     \brief Structures pour parser.
00003 
00004     Structures utilisé par les parser de protocol programmable.
00005 
00006     \author     aerith (www.aerith.fr)
00007     \version    1.0
00008     \date       23/05/2007
00009 */
00010 
00011 #include    "NetRequest.h"
00012 
00013 
00014 NetRequestParameter::NetRequestParameter(NetConnect *pConnect)
00015 {
00016     NbParameter = 0;
00017     Connect     = pConnect;
00018     Pos         = 0;
00019 }
00020 
00021 NetRequestParameter::~NetRequestParameter()
00022 {
00023     for(int i = 0; i < NbParameter; i++)
00024     {
00025         delete [] Parameters[i]->Label;
00026 
00027         delete [] Parameters[i]->Data;
00028 
00029         delete Parameters[i];
00030     }
00031     Parameters.clear();
00032 }
00033 
00034 void    NetRequestParameter::SetName(char *pName, int iPos)
00035 {
00036     strncpy(Name, pName, NET_NAME);
00037     Pos = iPos;
00038 }
00039 
00040 int     NetRequestParameter::Add(char *pLabel, char *pData)
00041 {
00042     int     i;
00043 
00044     Parameters.push_back(new NetRequestData);
00045 
00046     if(!Parameters[NbParameter])
00047         return ERROR_C_MEMORY;
00048     else
00049     {
00050         i = strlen(pLabel);
00051         Parameters[NbParameter]->Label = new char[i + 1];
00052         strcpy(Parameters[NbParameter]->Label, pLabel);
00053         Parameters[NbParameter]->Size = strlen(pData);
00054         Parameters[NbParameter]->Data = new char[Parameters[NbParameter]->Size + 1];
00055         strcpy(Parameters[NbParameter]->Data, pData);
00056     }
00057     
00058     NbParameter++;
00059     
00060     return ERROR_C_NOERROR;
00061 }
00062 
00063 int     NetRequestParameter::Send(char *pBuffer, ...)
00064 {
00065     char    Temp[NET_BUFFER];
00066     va_list args;
00067 
00068     va_start(args, pBuffer);
00069     vsprintf(Temp, pBuffer, args);
00070     va_end(args);
00071 
00072     return Connect->Send(Temp);
00073 };

Généré le Thu Jan 24 12:36:03 2008 pour A.I.F. par  doxygen 1.3.9.1