** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: backprojectors.h,v 1.8 2000/07/11 10:32:44 kevin Exp $
+** $Id: backprojectors.h,v 1.11 2000/07/20 11:17:31 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
******************************************************************************/
+#ifndef __BACKPROJECTORS_H
+#define __BACKPROJECTORS_H
+
#undef HAVE_BSPLINE_INTERP
+#include "imagefile.h"
+
+
class Backproject;
class Backprojector
INTERP_FREQ_PREINTERPOLATION,
} InterpolationID;
- static const char BPROJ_TRIG_STR[]= "trig";
- static const char BPROJ_TABLE_STR[]= "table";
- static const char BPROJ_DIFF_STR[]= "diff";
- static const char BPROJ_DIFF2_STR[]= "diff2";
- static const char BPROJ_IDIFF2_STR[]= "idiff2";
- static const char BPROJ_IDIFF3_STR[]= "idiff3";
+ static const char BPROJ_TRIG_STR[];
+ static const char BPROJ_TABLE_STR[];
+ static const char BPROJ_DIFF_STR[];
+ static const char BPROJ_DIFF2_STR[];
+ static const char BPROJ_IDIFF2_STR[];
+ static const char BPROJ_IDIFF3_STR[];
+
+ static const char BPROJ_TRIG_TITLE_STR[];
+ static const char BPROJ_TABLE_TITLE_STR[];
+ static const char BPROJ_DIFF_TITLE_STR[];
+ static const char BPROJ_DIFF2_TITLE_STR[];
+ static const char BPROJ_IDIFF2_TITLE_STR[];
+ static const char BPROJ_IDIFF3_TITLE_STR[];
- static const char INTERP_NEAREST_STR[]= "nearest";
- static const char INTERP_LINEAR_STR[]= "linear";
- static const char INTERP_BSPLINE_STR[]= "bspline";
- static const char INTERP_FREQ_PREINTERPOLATION_STR[]= "freq_preinterpolation";
+ static const char INTERP_NEAREST_STR[];
+ static const char INTERP_LINEAR_STR[];
+ static const char INTERP_BSPLINE_STR[];
+ static const char INTERP_FREQ_PREINTERPOLATION_STR[];
+
+ static const char INTERP_NEAREST_TITLE_STR[];
+ static const char INTERP_LINEAR_TITLE_STR[];
+ static const char INTERP_BSPLINE_TITLE_STR[];
+ static const char INTERP_FREQ_PREINTERPOLATION_TITLE_STR[];
Backprojector (const Projections& proj, ImageFile& im, const char* const backprojName, const char* const interpName, const int interpFactor);
void Backproject::errorIndexOutsideDetector (int ix, int iy, double theta, double r, double phi, double L, int ni);
void Backproject::errorIndexOutsideDetector (int ix, int iy, double theta, double L, int ni);
- Backprojector::InterpolationID interpType;
const Projections& proj;
ImageFile& im;
+ Backprojector::InterpolationID interpType;
ImageFileArray v;
- kuint32 nx;
- kuint32 ny;
+ kint32 nx;
+ kint32 ny;
double detInc;
double rotInc;
int iDetCenter; // index refering to L=0 projection
};
+#endif