X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Fprojections.h;h=c55b44c89f6c46ff8bf0470d8be875c47e5c5cc6;hp=ef465eca26ca6c0f2a2d4e0ebb4399550fec67f8;hb=c953cbb6ffc2fd50e736230f4e6976a025983cff;hpb=2ada42368dc805ec44c364ce933dc9591a3c6f0b diff --git a/include/projections.h b/include/projections.h index ef465ec..c55b44c 100644 --- a/include/projections.h +++ b/include/projections.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: projections.h,v 1.23 2001/02/08 22:01:27 kevin Exp $ +** $Id: projections.h,v 1.26 2001/03/01 07:30:49 kevin Exp $ ** ** ** This program is free software; you can redistribute it and/or modify @@ -54,8 +54,8 @@ class Projections ~Projections (); static const int getInterpCount() {return s_iInterpCount;} - static const char** getInterpNameArray() {return s_aszInterpName;} - static const char** getInterpTitleArray() {return s_aszInterpTitle;} + static const char* const* getInterpNameArray() {return s_aszInterpName;} + static const char* const* getInterpTitleArray() {return s_aszInterpTitle;} static int convertInterpNameToID (const char* const interpName); static const char* convertInterpIDToName (const int interpID); static const char* convertInterpIDToTitle (const int interpID); @@ -75,7 +75,7 @@ class Projections bool convertPolar (ImageFile& rIF, int iInterpolation); bool convertFFTPolar (ImageFile& rIF, int iInterpolation, int iZeropad); - void calcArrayPolarCoordinates (unsigned int nx, unsigned int ny, double** ppdView, double** ppdDet); + bool calcArrayPolarCoordinates (unsigned int nx, unsigned int ny, double** ppdView, double** ppdDet); void interpolatePolar (ImageFileArray& v, ImageFileArray& vImag, unsigned int nx, unsigned int ny, std::complex** ppcDetValue, double** ppdDet, double** ppdView, unsigned int nView, unsigned int nDet, int iInterpolate); @@ -99,6 +99,8 @@ class Projections int nView() const {return m_nView;} int geometry() const {return m_geometry;} double focalLength() const {return m_dFocalLength;} + double sourceDetectorLength() const { return m_dSourceDetectorLength;} + double phmLen() const { return m_dViewDiameter / SQRT2; } void setPhmLen(double phmLen) { m_dViewDiameter = phmLen * SQRT2; } @@ -131,6 +133,7 @@ class Projections double m_detStart; // distance of beginning detector to center phantom double m_detInc; // increment between detectors double m_dFocalLength; + double m_dSourceDetectorLength; double m_dViewDiameter; double m_dFanBeamAngle; kuint32 m_year; // Creation date & time @@ -144,8 +147,8 @@ class Projections const static kuint16 m_signature; - static const char* s_aszInterpName[]; - static const char* s_aszInterpTitle[]; + static const char* const s_aszInterpName[]; + static const char* const s_aszInterpTitle[]; static const int s_iInterpCount; bool headerWrite (fnetorderstream& fs);