X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=include%2Fir.h;h=3cc918a6da7d3f226217716ad8049a7ed9ed6db1;hb=c15d94034f5f815fc058c49c4b16f48ded042fd9;hp=08cdd1d9b2014381b8ecb8eb710ab8ece91ca943;hpb=1e8e203f6b646a69235589d3b8f931da12e77b91;p=ctsim.git diff --git a/include/ir.h b/include/ir.h index 08cdd1d..3cc918a 100644 --- a/include/ir.h +++ b/include/ir.h @@ -2,8 +2,17 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: ir.h,v 1.15 2000/05/16 04:33:17 kevin Exp $ +** $Id: ir.h,v 1.18 2000/06/05 01:32:45 kevin Exp $ ** $Log: ir.h,v $ +** Revision 1.18 2000/06/05 01:32:45 kevin +** Added C++ compatibility +** +** Revision 1.17 2000/06/03 06:29:08 kevin +** *** empty log message *** +** +** Revision 1.16 2000/05/24 22:48:17 kevin +** First functional version of SDF library for X-window +** ** Revision 1.15 2000/05/16 04:33:17 kevin ** Updated documentation ** @@ -270,13 +279,16 @@ typedef enum { } FunctionSymmetry; /* interpolation methods */ +#undef HAVE_BSPLINE_INTERP typedef enum { /* Interpolation methods */ I_NEAREST, /* Nearest neighbor */ - I_LINEAR, /* Linear interpolation */ +#if HAVE_BSPLINE_INTERP I_BSPLINE, I_1BSPLINE, /* 1st order B-Spline */ I_2BSPLINE, - I_3BSPLINE + I_3BSPLINE, +#endif + I_LINEAR /* Linear interpolation */ } InterpolationType; /* Constants for sizing PHANTOM */ @@ -361,7 +373,7 @@ const static int RAYSUM_TRACE_ROW_ATTEN=18; void usage (const char *program); /* From reconstr.c */ -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); +IMAGE *image_reconst (IMAGE *im, RAYSUM *rs, const FilterType filt_type, double filt_param, 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); @@ -420,7 +432,9 @@ IMAGE *image_create(const char *fname, const int nx, const int ny); int image_clear(IMAGE *im); int image_save(IMAGE *im); IMAGE *image_load(const char *fname); -void image_filter_response(IMAGE *im, int domain, double bw, int filt_type, double filt_param, int opt_trace); +void image_filter_response(IMAGE *im, const DomainType domain, double bw, const FilterType filt_type, double filt_param, const int opt_trace); +int image_display (const IMAGE *im); +int image_display_scale (const IMAGE *im, const int scale, const double pmin, const double pmax); /* options.c */ int opt_set_trace(const char *optarg); @@ -451,7 +465,7 @@ void calc_arc(double x[], double y[], const int pts, const double xcent, const d void calc_ellipse(double x[], double y[], const int pts, const double u, const double v); int circle_pts(double theta); void phm_print(PHANTOM *phm); -#if HAVE_INTERACTIVE_GRAPHICS +#if HAVE_SGP void phm_show(const PHANTOM *phm); void phm_draw(const PHANTOM *phm); #endif