** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: projections.h,v 1.1 2000/06/17 20:12:14 kevin Exp $
+** $Id: projections.h,v 1.4 2000/06/22 10:17:28 kevin Exp $
**
**
** This program is free software; you can redistribute it and/or modify
Projections (void);
~Projections (void);
- void init (const int nView, const int nDet);
+ void initFromScanner (const Scanner& scanner);
void printProjectionData (void);
void printScanInfo (void) const;
bool read (const char* fname);
bool write (const char* fname);
- bool detarrayRead (DetectorArray& darray, const int view_num);
- bool detarrayWrite (const DetectorArray& darray, const int view_num);
+ bool detarrayRead (fnetorderstream& fs, DetectorArray& darray, const int view_num);
+ bool detarrayWrite (fnetorderstream& fs, const DetectorArray& darray, const int view_num);
+
+ bool reconstruct (ImageFile& im, const char* const filterName, double filt_param, const char* const interpName, int interp_param, const char* const backprojName, const int trace);
+ void setNView (int nView); // used in MPI to restrict # of views
void setRotInc (double rotInc) { m_rotInc = rotInc;}
void setDetInc (double detInc) { m_detInc = detInc;}
void setPhmLen (double phmLen) { m_phmLen = phmLen;}
{ return (*m_projData[iview]); }
private:
- int m_fd; // Disk file descriptor
int m_headerSize; // Size of disk file header
int m_geometry; // Geometry of scanner
struct DetectorArray **m_projData; // Pointer to array of detarray_st pointers
bool headerRead (void);
bool headerWrite (void);
+ bool headerRead (fnetorderstream& fs);
+ bool headerWrite (fnetorderstream& fs);
void newProjData (void);
void deleteProjData (void);
+
+ void init (const int nView, const int nDet);
};