** This is part of the CTSim program
** Copyright (c) 1983-2001 Kevin Rosenberg
**
-** $Id: reconstruct.h,v 1.6 2001/02/20 04:48:45 kevin Exp $
+** $Id: reconstruct.h,v 1.9 2001/03/13 08:24:41 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
#include <string>
+struct ReconstructionROI {
+ double m_dXMin;
+ double m_dYMin;
+ double m_dXMax;
+ double m_dYMax;
+};
+
class Reconstructor
{
private:
- const Projections& m_rProj;
+ const Projections& m_rOriginalProj;
+ const Projections* m_pProj;
ImageFile& m_rImagefile;
ProcessSignal* m_pProcessSignal;
Backprojector* m_pBackprojector;
int m_nFilteredProjections;
int m_iTrace;
-
+ const bool m_bRebinToParallel;
bool m_bFail;
std::string m_strFailMessage;
double* m_adPlotXAxis;
public:
- Reconstructor (const Projections& rProj, ImageFile& rIF, const char* const filterName, double filt_param, const char* const filterMethodName, const int zeropad, const char* filterGenerationName, const char* const interpName, int interpFactor, const char* const backprojectName, const int trace, SGP* pSGP = NULL);
+ Reconstructor (const Projections& rProj, ImageFile& rIF, const char* const filterName, double filt_param,
+ const char* const filterMethodName, const int zeropad, const char* filterGenerationName,
+ const char* const interpName, int interpFactor, const char* const backprojectName, const int trace,
+ ReconstructionROI* pROI = NULL, bool bRebinToParallel = false, SGP* pSGP = NULL);
~Reconstructor ();
void reconstructAllViews ();
void reconstructView (int iStartView = 0, int iViewCount = -1, SGP* pSGP = NULL, bool bBackprojectView = true, double dGraphWidth = 1.);
+ void postProcessing ();
};
#endif