annotate include/client.h @ 44:f5b5c648cd5d ultra-staging

- added (unused) simple c++ classes for udp datagrams\n- added tests for the new classes
author Giulio Moro <giuliomoro@yahoo.it>
date Wed, 20 May 2015 18:07:16 +0100
parents 4255ecbb9bec
children d3f869b98147
rev   line source
giuliomoro@24 1 /* UDP client in the internet domain */
giuliomoro@24 2 #include <sys/types.h>
giuliomoro@24 3 #include <sys/socket.h>
giuliomoro@24 4 #include <netinet/in.h>
giuliomoro@24 5 #include <arpa/inet.h>
giuliomoro@24 6 #include <netdb.h>
giuliomoro@24 7 #include <stdio.h>
giuliomoro@24 8 #include <stdlib.h>
giuliomoro@24 9 #include <unistd.h>
giuliomoro@24 10 #include <string.h>
giuliomoro@24 11
giuliomoro@24 12 struct networkData{
giuliomoro@24 13 int *counter;
giuliomoro@24 14 float *variables[16];
giuliomoro@24 15 int numVariables;
giuliomoro@24 16 };
giuliomoro@41 17 #define NETWORK_AUDIO_BUFFER_SIZE 100 //1400/4 //maximum payload for a UDP datagram over ethernet is 1472 bytes, I leave some headroom and divide by 4 to get the number of floats
giuliomoro@41 18 struct networkAudio{
giuliomoro@41 19 int timestamp;
giuliomoro@41 20 int currentBuffer;
giuliomoro@41 21 int index;
giuliomoro@41 22 float buffers[2][NETWORK_AUDIO_BUFFER_SIZE];
giuliomoro@41 23 int doneOnTime;
giuliomoro@41 24 };
giuliomoro@24 25
giuliomoro@24 26 void error(const char *);
giuliomoro@24 27 int setupSockets(int receivePort, int transmitPort, char const*serverName);
giuliomoro@24 28 int sendMessage(networkData message);
giuliomoro@41 29 int sendAudio(networkAudio *audio);
giuliomoro@24 30 int receiveMessage(networkData message);
giuliomoro@24 31 void closeSockets();