#ifndef IPC_H #define IPC_H #include #include #include "fen.h" #include "uci/state.h" void* create_shared_memory(size_t size); typedef struct { struct uci_move *moves; int count; int capacity; } comm_moves; struct engine_message { int depth; int seldepth; int multipv; int score_cp; int nodes; int nps; int hashfull; int tbhits; int time; comm_moves pv; struct engine_message *next; }; enum { MESSAGE_FILLED, MESSAGE_READ, MESSAGE_PROCESSED }; typedef struct { struct engine_message engine_message; int uci_message_ready; struct fen_load from_position; comm_moves moves; } comms; comm_moves comm_moves_init(); void add_comm_move(comm_moves *moves, struct uci_move move); #endif // IPC_H