r70: added imagefiles
[ctsim.git] / include / ir.h
index cf8b6a09ff80573e945533e2101b6d7c1bf0b597..0a04c795d74bb149107c832af9b31cbf329711a5 100644 (file)
@@ -2,8 +2,17 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: ir.h,v 1.16 2000/05/24 22:48:17 kevin Exp $
+**  $Id: ir.h,v 1.19 2000/06/07 00:59:38 kevin Exp $
 **  $Log: ir.h,v $
+**  Revision 1.19  2000/06/07 00:59:38  kevin
+**  added imagefiles
+**
+**  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
 **
 #ifndef IR_H
 #define IR_H
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
 #ifdef MPI_CT
 #define MPI_MAX_PROCESS 128 
 struct mpi_ct_st
@@ -262,24 +267,27 @@ static const char D_FREQ_STR[]=    "freq";
 static const char D_SPATIAL_STR[]= "spatial";
  
 typedef enum {
-  D_FREQ,
+  D_FREQ = 1,
   D_SPATIAL 
 } DomainType;
 
 typedef enum {
-    FUNC_EVEN,    /* function types, f[-n] = f[n] */
+    FUNC_EVEN = 1,    /* function types, f[-n] = f[n] */
     FUNC_ODD,     /* f[-n] = -f[n] */
     FUNC_BOTH    /* function has both odd & even components */
 } FunctionSymmetry;
 
 /* interpolation methods */
+#undef HAVE_BSPLINE_INTERP
 typedef enum {     /* Interpolation methods */
-  I_NEAREST,       /* Nearest neighbor */
-  I_LINEAR,        /* Linear interpolation */
+  I_NEAREST = 1,       /* Nearest neighbor */
+#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 */
@@ -360,11 +368,15 @@ const static int RAYSUM_TRACE_ROW_ATTEN=18;
 /*************************************************************************
  *  FUNCTION DECLARATIONS
  ************************************************************************/
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
 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);