mirror of
https://github.com/yoboujon/tsock.git
synced 2025-06-08 14:00:50 +02:00
Prise en charge complète de la liste des messages
This commit is contained in:
parent
105907be70
commit
7885ac7bb6
3 changed files with 61 additions and 31 deletions
29
header/bal.h
Normal file
29
header/bal.h
Normal file
|
@ -0,0 +1,29 @@
|
|||
#ifndef HEADER_BAL
|
||||
#define HEADER_BAL
|
||||
|
||||
#include "tsock.h"
|
||||
|
||||
typedef struct{
|
||||
char *data;
|
||||
int tailleData;
|
||||
int idEmeteur;
|
||||
}messageBAL;
|
||||
|
||||
struct elementMessage{
|
||||
messageBAL * messageBALActuel;
|
||||
struct elementMessage * suiv;
|
||||
};
|
||||
|
||||
struct listeMessage{
|
||||
struct elementMessage * debut;
|
||||
struct elementMessage * courant;
|
||||
struct elementMessage * fin;
|
||||
};
|
||||
|
||||
messageBAL * creeMessage(char *data,int idEmeteur);
|
||||
struct elementMessage * initElementMessage(void);
|
||||
struct listeMessage initListeMessage(void);
|
||||
void ajoutListe(struct listeMessage * listeActuel,messageBAL * leMessage);
|
||||
void afficheListeMessage(struct listeMessage listeActuel);
|
||||
|
||||
#endif
|
|
@ -2,6 +2,8 @@
|
|||
#define HEADER_PUIT
|
||||
|
||||
#include "tsock.h"
|
||||
|
||||
int launchPuit(int nombreMessage,int tailleMessage,int isTCP,int port,char * ipAddress);
|
||||
int receiveMultipleData(int nombreMessages, int tailleMessage, int sock, struct sockaddr_in socketStruct, int isTCP);
|
||||
|
||||
#endif
|
61
src/bal.c
61
src/bal.c
|
@ -1,31 +1,10 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
typedef struct{
|
||||
char *data;
|
||||
int tailleData;
|
||||
int idEmeteur;
|
||||
}messageBAL;
|
||||
|
||||
struct elementMessage{
|
||||
messageBAL * messageBALActuel;
|
||||
struct messageBAL * suiv;
|
||||
};
|
||||
|
||||
struct listeMessage{
|
||||
struct elementMessage * debut;
|
||||
struct elementMessage * courant;
|
||||
struct elementMessage * fin;
|
||||
};
|
||||
|
||||
messageBAL * creeMessage(char *data,int idEmeteur);
|
||||
struct elementMessage * initElement(void);
|
||||
struct listeMessage initListe(void);
|
||||
#include "../header/bal.h"
|
||||
|
||||
int main(void){
|
||||
initElement();
|
||||
struct listeMessage l = initListeMessage();
|
||||
messageBAL * messageBAL = creeMessage("Renvoi moi mon pdf asap. -Simon",1);
|
||||
ajoutListe(&l,messageBAL);
|
||||
afficheListeMessage(l);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -40,7 +19,7 @@ messageBAL * creeMessage(char *data,int idEmeteur)
|
|||
return message;
|
||||
}
|
||||
|
||||
struct elementMessage * initElement(void)
|
||||
struct elementMessage * initElementMessage(void)
|
||||
{
|
||||
struct elementMessage * returnElement = malloc(sizeof(struct elementMessage));
|
||||
returnElement->messageBALActuel = creeMessage("",0);
|
||||
|
@ -48,11 +27,31 @@ struct elementMessage * initElement(void)
|
|||
return returnElement;
|
||||
}
|
||||
|
||||
struct listeMessage initListe(void)
|
||||
struct listeMessage initListeMessage(void)
|
||||
{
|
||||
struct listeMessage l;
|
||||
l.debut=initElement();
|
||||
l.fin=initElement();
|
||||
l.courant=initElement();
|
||||
l.debut=initElementMessage();
|
||||
l.fin=initElementMessage();
|
||||
l.courant=initElementMessage();
|
||||
return l;
|
||||
}
|
||||
|
||||
void ajoutListe(struct listeMessage * listeActuel,messageBAL * leMessage)
|
||||
{
|
||||
struct elementMessage * elementActuel = malloc(sizeof(struct elementMessage));
|
||||
elementActuel->messageBALActuel=leMessage;
|
||||
elementActuel->suiv=listeActuel->courant;
|
||||
listeActuel->debut=elementActuel;
|
||||
listeActuel->courant=elementActuel;
|
||||
}
|
||||
|
||||
void afficheListeMessage(struct listeMessage listeActuel)
|
||||
{
|
||||
struct elementMessage * elementFinal = listeActuel.fin;
|
||||
struct elementMessage * elementCourant = listeActuel.courant;
|
||||
while(elementCourant->suiv != elementFinal->suiv)
|
||||
{
|
||||
printf("%s\n",elementCourant->messageBALActuel->data);
|
||||
elementCourant=elementCourant->suiv;
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue