** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: ir.h,v 1.13 2000/05/08 20:00:48 kevin Exp $
+** $Id: ir.h,v 1.14 2000/05/11 14:07:00 kevin Exp $
** $Log: ir.h,v $
+** Revision 1.14 2000/05/11 14:07:00 kevin
+** Added support for Windows NT
+**
** Revision 1.13 2000/05/08 20:00:48 kevin
** ANSI C changes
**
void usage (const char *program);
/* From reconstr.c */
-IMAGE *image_reconst (IMAGE *im, RAYSUM *rs, int filt_type, double filt_param, int interp_type, int interp_param, const int backproj_type, int ir_trace);
+IMAGE *image_reconst (IMAGE *im, RAYSUM *rs, int filt_type, double filt_param, const InterpolationType interp_type, int interp_param, const BackprojType backproj_type, int const ir_trace);
/* From bproj.c */
void backproj_init (const RAYSUM *rs, IMAGE *im, const BackprojType bproj_method);
int filter_select(double *filter_param);
/* filter.c */
-double *filter_generate(const FilterType filt_type, double bw, double xmin, double xmax, int n, double param, DomainType domain, int numint);
+double *filter_generate(const FilterType filt_type, double bw, double xmin, double xmax, int n, double param, const DomainType domain, int numint);
double filter_spatial_response_calc(int filt_type, double x, double bw, double param, int n);
double filter_spatial_response_analytic(int filt_type, double x, double bw, double param);
double filter_frequency_response(int filt_type, double u, double bw, double param);
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: sgp.h,v 1.5 2000/05/07 12:46:19 kevin Exp $
+** $Id: sgp.h,v 1.6 2000/05/11 14:07:00 kevin Exp $
** $Log: sgp.h,v $
+** Revision 1.6 2000/05/11 14:07:00 kevin
+** Added support for Windows NT
+**
** Revision 1.5 2000/05/07 12:46:19 kevin
** made c++ compatible
**
void circle(const double r);
void drawarc(double start, double stop, const double r);
/* ctm.c */
-int ctm_xlat_pre_2(double x, double y);
-int ctm_xlat_post_2(double x, double y);
-int ctm_scale_pre_2(double sx, double sy);
-int ctm_scale_post_2(double sx, double sy);
-int ctm_rotate_pre_2(double theta);
-int ctm_rotate_post_2(double theta);
-int ctm_shear_pre_2(double shrx, double shry);
-int ctm_shear_post_2(double shrx, double shry);
-int xlat_gmtx_2(GRFMTX_2D m, double x, double y);
-int scale_gmtx_2(GRFMTX_2D m, double sx, double sy);
-int shear_gmtx_2(GRFMTX_2D m, double shrx, double shry);
-int rotate_gmtx_2(GRFMTX_2D m, double theta);
-int ident_gmtx_2(GRFMTX_2D m);
-int mult_gmtx_2(GRFMTX_2D a, GRFMTX_2D b, GRFMTX_2D c);
-int invert_gmtx_2(GRFMTX_2D a, GRFMTX_2D b);
+void ctm_xlat_pre_2(double x, double y);
+void ctm_xlat_post_2(double x, double y);
+void ctm_scale_pre_2(double sx, double sy);
+void ctm_scale_post_2(double sx, double sy);
+void ctm_rotate_pre_2(double theta);
+void ctm_rotate_post_2(double theta);
+void ctm_shear_pre_2(double shrx, double shry);
+void ctm_shear_post_2(double shrx, double shry);
+void xlat_gmtx_2(GRFMTX_2D m, double x, double y);
+void scale_gmtx_2(GRFMTX_2D m, double sx, double sy);
+void shear_gmtx_2(GRFMTX_2D m, double shrx, double shry);
+void rotate_gmtx_2(GRFMTX_2D m, double theta);
+void ident_gmtx_2(GRFMTX_2D m);
+void mult_gmtx_2(GRFMTX_2D a, GRFMTX_2D b, GRFMTX_2D c);
+void invert_gmtx_2(GRFMTX_2D a, GRFMTX_2D b);
double determ_gmtx_2(GRFMTX_2D a);
/* drawbox.c */
-int drawbox(double xmin, double ymin, double xmax, double ymax);
+void drawbox(double xmin, double ymin, double xmax, double ymax);
/* sgp.c */
-int gp_init_2(void);
-int window2(double xmin, double ymin, double xmax, double ymax);
-int window_2(double xmin, double ymin, double xmax, double ymax);
-int viewprt2(double xmin, double ymin, double xmax, double ymax);
-int viewport_2(double xmin, double ymin, double xmax, double ymax);
-int framevpt(void);
-int calc_wc_to_ndc(void);
-int calc_ndc_to_mc(void);
-int wc_to_ndc(double xw, double yw, double *xn, double *yn);
-int ndc_to_wc(double xn, double yn, double *xw, double *yw);
-int color(int icol);
-int linestyle(int style);
-int line_abs_2(double x, double y);
-int lineabs2(double x, double y);
-int move_abs_2(double x, double y);
-int moveabs2(double x, double y);
-int line_rel_2(double x, double y);
-int linerel2(double x, double y);
-int move_rel_2(double x, double y);
-int moverel2(double x, double y);
-int draw_text(char *message);
-int drawtext(char *message);
-int polylnabs2(double x[], double y[], int n);
-int markabs2(double x, double y);
-int markrel2(double x, double y);
-int pntabs2(double x, double y);
-int pntrel2(double x, double y);
-int ctm_clr_2(void);
-int ctm_get_2(GRFMTX_2D m);
-int ctm_set_2(GRFMTX_2D m);
-int ctm_pre_mult_2(GRFMTX_2D m);
-int ctm_post_mult_2(GRFMTX_2D m);
+void gp_init_2(void);
+void window2(double xmin, double ymin, double xmax, double ymax);
+void window_2(double xmin, double ymin, double xmax, double ymax);
+void viewprt2(double xmin, double ymin, double xmax, double ymax);
+void viewport_2(double xmin, double ymin, double xmax, double ymax);
+void framevpt(void);
+void calc_wc_to_ndc(void);
+void calc_ndc_to_mc(void);
+void wc_to_ndc(double xw, double yw, double *xn, double *yn);
+void ndc_to_wc(double xn, double yn, double *xw, double *yw);
+void color(int icol);
+void linestyle(int style);
+void line_abs_2(double x, double y);
+void lineabs2(double x, double y);
+void move_abs_2(double x, double y);
+void moveabs2(double x, double y);
+void line_rel_2(double x, double y);
+void linerel2(double x, double y);
+void move_rel_2(double x, double y);
+void moverel2(double x, double y);
+void draw_text(char *message);
+void drawtext(char *message);
+void polylnabs2(double x[], double y[], int n);
+void markabs2(double x, double y);
+void markrel2(double x, double y);
+void pntabs2(double x, double y);
+void pntrel2(double x, double y);
+void ctm_clr_2(void);
+void ctm_get_2(GRFMTX_2D m);
+void ctm_set_2(GRFMTX_2D m);
+void ctm_pre_mult_2(GRFMTX_2D m);
+void ctm_post_mult_2(GRFMTX_2D m);
/* sgpdrive.c */
int initgrf2(void);
int initdevice(int dev, int mode, int xsize, int ysize);
int opendevice(int dev);
-int closedevice(int dev);
-int termdevice(int dev);
+void closedevice(int dev);
+void termdevice(int dev);
void stylus(double x, double y, int beam);
-int pntndc(double x, double y);
-int markndc(double x, double y);
+void pntndc(double x, double y);
+void markndc(double x, double y);
GRFSTATE *inqstate(void);
-int gp_set_aspect(int dev, double asp);
+void gp_set_aspect(int dev, double asp);
void setlinestyle(int style);
-int setlinewidth(int wid);
+void setlinewidth(int wid);
DEVICE *inqdev(int dev);
-int settext(double width, double height, double textangle, int font);
-int settextclr(int fore, int back);
-int setcolor(int fore);
-int setbackg(int back);
+void settext(double width, double height, double textangle, int font);
+void settextclr(int fore, int back);
+void setcolor(int fore);
+void setbackg(int back);
int initmarker(int marker, int color);
int settextdir(int direction);
-int charsize(double wid, double height);
-int textangle(double angle);
-int drivtext(char *message);
-int termgrf2(void);
-int flushdevice(int dev);
+void charsize(double wid, double height);
+void textangle(double angle);
+void drivtext(char *message);
+void termgrf2(void);
+void flushdevice(int dev);
/* sgptext.c */
void wrtsymbol(int sym, int x, int y, DEVICE *dev);
void wrtchar(int ch, int x, int y, CHARSPEC *cspec, DEVICE *dev);