#ifndef UI_H__
#define UI_H__
+#define _USE_MATH_DEFINES
+#include <stdarg.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdbool.h>
+#include <readline/readline.h>
+#include <pthread.h>
+#include <math.h>
+#include <complex.h>
+
+// Handle platform specific includes
+#ifndef _WIN32
+ #include <sys/time.h>
+#else
+ #include <time.h>
+ #include <windows.h>
+#endif
+
+#include "loclass/cipherutils.h"
#include "util.h"
+#include "cmdmain.h"
+#include "cmddata.h"
+#ifndef M_PI
+#define M_PI 3.14159265358979323846264338327
+#endif
void ShowGui(void);
void HideGraphWindow(void);
void ShowGraphWindow(void);
void SetLogFilename(char *fn);
extern double CursorScaleFactor;
-extern int PlotGridX, PlotGridY, PlotGridXdefault, PlotGridYdefault;
+extern int PlotGridX, PlotGridY, PlotGridXdefault, PlotGridYdefault, CursorCPos, CursorDPos;
+extern int PlotClock, PlockClockStartIndex;
extern int offline;
extern int flushAfterWrite; //buzzy
-int manchester_decode(const int * data, const size_t len, uint8_t * dataout);
-int GetT55x7Clock( const int * data, const size_t len, int high );
-int DetectFirstTransition(const int * data, const size_t len, int high, int low);
-void PrintPaddedManchester( uint8_t * bitStream, size_t len, size_t blocksize);
-void ManchesterDiffDecodedString( const uint8_t *bitStream, size_t len, uint8_t invert );
-int ManchesterConvertFrom255(const int * data, const size_t len, uint8_t * dataout, int high, int low, int clock, int startIndex);
-int ManchesterConvertFrom1(const int * data, const size_t len, uint8_t * dataout, int clock, int startIndex);
+void iceIIR_Butterworth(int * data, const size_t len);
+void iceSimple_Filter(int *data, const size_t len, uint8_t k);
#endif