void AppendGraph(int redraw, int clock, int bit);
int ClearGraph(int redraw);
//int DetectClock(int peak);
-int getFromGraphBuf(uint8_t *buff);
-int GetClock(const char *str, int peak, int verbose);
-void setGraphBuf(uint8_t *buff,int size);
+size_t getFromGraphBuf(uint8_t *buff);
+int GetAskClock(const char str[], bool printAns, bool verbose);
+int GetPskClock(const char str[], bool printAns, bool verbose);
+uint8_t GetNrzClock(const char str[], bool printAns, bool verbose);
+uint8_t GetFskClock(const char str[], bool printAns, bool verbose);
+uint8_t fskClocks(uint8_t *fc1, uint8_t *fc2, uint8_t *rf1, bool verbose);
+void setGraphBuf(uint8_t *buff, size_t size);
+
+bool HasGraphData();
+void DetectHighLowInGraph(int *high, int *low, bool addFuzz);
+
+// Max graph trace len: 40000 (bigbuf) * 8 (at 1 bit per sample)
+#define MAX_GRAPH_TRACE_LEN (40000 * 8 )
-#define MAX_GRAPH_TRACE_LEN (1024*128)
extern int GraphBuffer[MAX_GRAPH_TRACE_LEN];
extern int GraphTraceLen;
-
#endif