** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: backprojectors.h,v 1.13 2000/08/25 15:59:13 kevin Exp $
+** $Id: backprojectors.h,v 1.15 2000/09/02 05:10:39 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
double xMin, xMax, yMin, yMax; // Retangular coords of phantom
double xInc, yInc; // size of cells
int m_interpFactor;
+ double m_dFocalLength;
private:
Backproject (const Backproject& rhs);
{
public:
BackprojectTable (const Projections& proj, ImageFile& im, int interpID, const int interpFactor);
- ~BackprojectTable ();
+ virtual ~BackprojectTable ();
void BackprojectView (const double* const t, double view_angle);
- private:
+ protected:
Array2d<kfloat64> arrayR;
Array2d<kfloat64> arrayPhi;
kfloat64** r;
void BackprojectView (const double* const t, double view_angle);
};
+class BackprojectEquilinear : public BackprojectTable
+{
+ public:
+ BackprojectEquilinear (const Projections& proj, ImageFile& im, int interpID, const int interpFactor)
+ : BackprojectTable::BackprojectTable (proj, im, interpID, interpFactor)
+ {}
+
+ void BackprojectView (const double* const t, double view_angle);
+
+ virtual ~BackprojectEquilinear()
+ {}
+};
+
+class BackprojectEquiangular : public BackprojectTable
+{
+ public:
+ BackprojectEquiangular (const Projections& proj, ImageFile& im, int interpID, const int interpFactor)
+ : BackprojectTable::BackprojectTable (proj, im, interpID, interpFactor)
+ {}
+
+ void BackprojectView (const double* const t, double view_angle);
+
+ virtual ~BackprojectEquiangular()
+ {}
+};
+
#endif