sysdis-project/central-manager/central-manager.h

49 lines
1.3 KiB
C

#include "lib/header.h"
/* local dependencies */
#include "lib/network/tcp/server.h"
#include "lib/network/udp/server.h"
/* headers */
void* LISTEN_TCP(void* THREADABLE_ARG);
void* LISTEN_UDP(void* THREADABLE_ARG);
void* managePlane(void* THREADABLE_SOCKET);
void* manageTerminal(void* THREADABLE_SOCKET);
// void* manageViewTerm(void* THREADABLE_SOCKET);
// void* manageCtrlTerm(void* THREADABLE_SOCKET);
// VARIABLES THREADS D'ECOUTE TCP/UDP
static pthread_t listenManagers[4]; // contiendra les THREADS d'écoute
// 1. Multicast UDP (plane)
// 2. ListenSock TCP (plane)
// 3. ListenSock UDP (vterm)
// 4. ListenSock UDP (cterm)
// VARIABLES THREADS CONNECTION TCP
static pthread_t TCPManagers[MAX_TCP_THR]; // contiendra les THREADS TCP
static int activeTCPManagers[MAX_TCP_THR] = {0}; // contiendra les THREADS TCP actifs
// VARIABLES THREADS CONNECTION UDP
static pthread_t UDPManagers[MAX_UDP_THR]; // contiendra les THREADS UDP
static int activeUDPManagers[MAX_UDP_THR] = {0}; // contiendra les THREADS UDP actifs
struct listn_thrd_arg{
const char addr[16];
const unsigned short port;
};
// ENREGISTREMENT DES DONNEES AVIONS
struct{
unsigned int data;
unsigned int update;
} sgca_index;
struct plane* sgca_data;
struct plane* sgca_update;