SO2019/util.h

62 lines
1.2 KiB
C

#define TAM_TITULO 128
#define TAM_CORPO 1001
#define TAM_NOME 100
#define TAM_SUB 32 //maximo nr de topics subscritos por utilizador
//tamanhos comunicacao cl<>sv
#define TAM_CMD 64
#define TAM_OPTS 128
#define TAM_RESP 512
typedef struct st_mensagem{
int id;
char titulo[TAM_TITULO];
char corpo[TAM_CORPO];
int duracao;
int time_added;
struct st_topic * topico;
struct st_mensagem * prox;
}mensagem;
typedef struct st_topic{
int id;
char nome[TAM_NOME];
struct st_mensagem * mensg;
struct st_topic * prox;
}topic;
//guardar clientes
typedef struct st_clients{
int pid;
char nome[TAM_NOME];
char fifostr[TAM_NOME];
int topics[TAM_SUB];
struct st_clients *prox;
}clients;
//estructura dados de cliente --> servidor
struct clmsg{
char titulo[TAM_TITULO];
char corpo[TAM_CORPO];
int duracao;
};
typedef struct st_cl2sv{
char fifostr[TAM_NOME];
//base
int pid;
char cmd[TAM_CMD];
char opts[TAM_OPTS];
int nopt;
//mensagem
struct clmsg msg;
}cl2sv;
//estructura de dados servidor --> cliente
typedef struct st_sv2cl{
int code;
char type[TAM_CMD];
char resp[TAM_RESP];
}sv2cl;