www.pudn.com > eval-1.2.zip > eg.c
#include#include #include #include #include "read.h" #include "write.h" #include "random.h" static data_t D; int main(int cn, char **cl) { unsigned BER, PoB, model; if (cn < 5) { puts("usage: eg [BER] [PoB]"); puts(" tcpdump sender"); puts(" tcpdump receiver (will be generated)"); puts(" tracefile sender"); puts(" AWGN or GE"); puts(" [BER] reciprocal Bit Error Rate (1000 -> 0.001)"); puts(" [PoB] Play-out buffer [ms]"); return 0; } BER = (cn > 5) ? strtoul(cl[5], 0, 10) : 0; if (BER < 10 || BER > 10000000) { BER = 10000; fprintf(stderr, "BER set to %g.\n", 1. / BER); } if (!strcmp(cl[4], "AWGN")) model = 0; else if (!strcmp(cl[4], "GE")) model = 1; else { fprintf(stderr, "unknown error model"); return EXIT_FAILURE; } PoB = (cn > 6) ? strtoul(cl[6], 0, 10) : 0; if (PoB < 10 || PoB > 10000) { PoB = 250; fprintf(stderr, "Play-out buffer set to %u ms.\n", PoB); } init_rand(); if (!ReadDump(cl, &D, 2, 0) || !GenRD_Std(cl[2], D.P, D.nP, model, BER, PoB)) return EXIT_FAILURE; free(D.P); free(D.F); return 0; }