r244: *** empty log message ***
[ctsim.git] / include / phantom.h
index 416b83301799c8078375a8ee31763fb51b1a43e0..bc245ee7512e7a5477e875399ba8574aa712c955 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: phantom.h,v 1.10 2000/07/22 15:45:33 kevin Exp $
+**  $Id: phantom.h,v 1.15 2000/12/04 05:36:57 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 PHANTOM_H
 #define PHANTOM_H
 
+#ifndef MSVC\r
 #include <slist>
+#endif\r
 #include "ctsupport.h"
-#include "backprojectors.h"
-class ImageFile;
 
 using namespace std;
 
@@ -98,8 +98,8 @@ class PhantomElement
     double* m_yOutline;
     double  m_rectLimits[4];
 
-    static const int POINTS_PER_CIRCLE = 360;
-    static const double SCALE_PELEM_EXTENT=0.005;  // increase pelem limits by 0.5% 
+    static const int POINTS_PER_CIRCLE;
+    static const double SCALE_PELEM_EXTENT;  // increase pelem limits by 0.5% 
 
     static PhmElemType PhantomElement::convertNameToType (const char* const typeName);
 
@@ -129,14 +129,16 @@ typedef enum {
 // Phantom Class Declaration
 //////////////////////////////////////////////////////
 
+class SGP;
+class ImageFile;
 class Phantom
 {
  public:
     static const int PHM_INVALID;
     static const int PHM_HERMAN;
-    static const int PHM_BHERMAN;
-    static const int PHM_ROWLAND;
-    static const int PHM_BROWLAND;
+    static const int PHM_B_HERMAN;
+    static const int PHM_SHEPP_LOGAN;
+    static const int PHM_B_SHEPP_LOGAN;
     static const int PHM_UNITPULSE;
 
     Phantom ();
@@ -160,7 +162,7 @@ class Phantom
 
     void addPElem (const char* const composition, const double cx, const double cy, const double u, const double v, const double rot, const double atten);
 
-    void convertToImagefile (ImageFile& im, const int in_nsample, const int trace, const int colStart, const int colCount) const;
+    void convertToImagefile (ImageFile& im, const int in_nsample, const int trace, const int colStart, const int colCount, bool bStoreAtColumnPos) const;
 
     void convertToImagefile (ImageFile& im, const int in_nsample, const int trace) const;
 
@@ -171,13 +173,14 @@ class Phantom
 
 #if HAVE_SGP
     void show () const;
-    void draw () const;
+    void show (SGP& sgp) const;
+    void draw (SGP& sgp) const;
 #endif
     
     void addStdHerman ();
     void addStdHermanBordered ();
-    void addStdRowland ();
-    void addStdRowlandBordered ();
+    void addStdSheppLogan ();
+    void addStdSheppLoganBordered ();
 
     void print () const;