r186: *** empty log message ***
[ctsim.git] / src / dialogs.h
index e4f890cbd44e8b491812db9d053416badcf2d7e1..7271339bd9a8c789e254157e8e22b38ffef5d948 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: dialogs.h,v 1.9 2000/08/22 07:02:48 kevin Exp $
+**  $Id: dialogs.h,v 1.12 2000/08/31 08:38:58 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
@@ -31,6 +31,7 @@
 
 #include "wx/wx.h"
 #include <string>
+#include "ctsupport.h"
 #include "scanner.h"
 #include "phantom.h"
 #include "procsignal.h"
@@ -109,13 +110,17 @@ class DialogGetRasterParameters : public wxDialog
 class DialogGetProjectionParameters : public wxDialog
 {
  public:
-    DialogGetProjectionParameters (wxFrame* pParent, int iDefaultNDet = 0, int iDefaultNView = 0, int iDefaultNSamples = 1, double dDefaultRotAngle = 1., int iDefaultGeometry = Scanner::GEOMETRY_PARALLEL);
+    DialogGetProjectionParameters (wxFrame* pParent, int iDefaultNDet = 0, int iDefaultNView = 0, int iDefaultNSamples = 1, double dDefaultRotAngle = 1., double dDefaultFocalLength = 1, double dDefaultFieldOfView = 1., int iDefaultGeometry = Scanner::GEOMETRY_PARALLEL, int iDefaultTrace = Trace::TRACE_NONE);
     ~DialogGetProjectionParameters (void);
 
     unsigned int getNDet (void);
     unsigned int getNView (void);
     unsigned int getNSamples (void);
+    int getTrace (void);
+
     double getRotAngle (void);
+    double getFieldOfViewRatio (void);
+    double getFocalLengthRatio (void);
     const char* getGeometry(void);
 
  private:
@@ -123,13 +128,19 @@ class DialogGetProjectionParameters : public wxDialog
     wxTextCtrl* m_pTextCtrlNView;
     wxTextCtrl* m_pTextCtrlNSamples;
     wxTextCtrl* m_pTextCtrlRotAngle;
+    wxTextCtrl* m_pTextCtrlFocalLength;
+    wxTextCtrl* m_pTextCtrlFieldOfView;
 
     StringValueAndTitleListBox* m_pListBoxGeometry;
+    StringValueAndTitleListBox* m_pListBoxTrace;
 
     int m_iDefaultNDet;
     int m_iDefaultNView;
     int m_iDefaultNSamples;
+    int m_iDefaultTrace;
     double m_dDefaultRotAngle;
+    double m_dDefaultFocalLength;
+    double m_dDefaultFieldOfView;
 };
 
 
@@ -171,5 +182,21 @@ class DialogGetReconstructionParameters : public wxDialog
     int m_iDefaultInterpParam;
 };
 
+class DialogAutoScaleParameters : public wxDialog
+{
+ public:
+    DialogAutoScaleParameters (wxFrame* pParent, const ImageFile& rImageFile, double dDefaultScaleFactor = 1.);
+    virtual ~DialogAutoScaleParameters() {}
+
+    void getMinMax (double* pMin, double* pMax);
+    double getAutoScaleFactor ();
+
+ private:
+    const ImageFile& m_rImageFile;
+
+    wxTextCtrl* m_pTextCtrlStdDevFactor;
+    wxListBox* m_pListBoxCenter;
+};
+
 #endif