/* Steven Andrews, 8/6/96 */
/* See documentation called Plot doc */
/* Copyright 2003 by Steven Andrews.  Permission is granted
   for non-commercial use of and modifications to the code. */

#ifndef __Plot_h
#define __Plot_h

void InitPlot();
void EndPlot();
void MakeWindow(float left,float right,float top,float bottom);
void KillWindow();
void InvalPlot();
void SetScales(float xa,float xb,float ya,float yb);
void GetScales(float *xa,float *xb,float *ya,float *yb);
void ScalePtrs(float **xa,float **xb,float **ya,float **yb);
void SetColor(char c);
void SetPenSize(int w,int h);
void ToPixel(float x,float y,int *a,int *b);
int ToPoint(int a,int b,float *x,float *y);
void DrawAxes();
void DrawMarks(float dx,float dy,int lo,int hi);
void PlotClear();
void PlotMove(float x,float y);
void PlotPt(float x,float y);
void PlotLine(float x,float y);
void PlotStr(float x,float y,char *s);
void ShowLimits();
void PlotFn(float (*fn)(float),float dx);
void PlotInt(float (*fn)(float),float x0,float dx);
void PlotData(float *data,int n,float xmin,float xmax,int style);
void PlotData2(float *data,float *x,int n,int style);
void PlotData3(float *x,float *y,int *ct,int col);

#endif