r329: *** empty log message ***
[ctsim.git] / src / ctsim.h
index 8367f21a9056b263c311f1c13a50e664241d71a8..9a26c00f34cdb4cd60728ba211b6fdf5317e66a0 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: ctsim.h,v 1.6 2000/09/07 01:28:33 kevin Exp $
+**  $Id: ctsim.h,v 1.18 2001/01/02 06:29:23 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
@@ -28,7 +28,6 @@
 #ifndef __CTSIMH__
 #define __CTSIMH__
 
-#include "wx/docview.h"
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 #endif
 
 class wxMenu;
-class wxDocument;
+class wxDocument;\r
+class ImageFileDocument;\r
+#include <vector>\r
+
+#include "wx/docview.h"\r
 
 // Define a new frame for main window
 class MainFrame: public wxDocParentFrame
@@ -47,16 +50,27 @@ private:
     wxTextCtrl* m_pLog;
     wxMenu* m_pWindowMenu;
 
-    static const int MAX_WINDOW_MENUITEMS = 20;
+    enum { MAX_WINDOW_MENUITEMS = 20 };
     wxMenuItem* m_apWindowMenuItems[MAX_WINDOW_MENUITEMS];
     wxDocument* m_apWindowMenuData[MAX_WINDOW_MENUITEMS];
+\r
+    int m_iDefaultPhantomID;\r
+    int m_iDefaultFilterID;\r
+    int m_iDefaultFilterDomainID;\r
+    unsigned int m_iDefaultFilterXSize;    \r
+    unsigned int m_iDefaultFilterYSize;\r
+    double m_dDefaultFilterParam;\r
+    double m_dDefaultFilterBandwidth;\r
+    double m_dDefaultFilterInputScale;\r
+    double m_dDefaultFilterOutputScale;\r
 
 public:
     MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type);
     
     void OnAbout (wxCommandEvent& event);
     void OnHelpContents (wxCommandEvent& event);
-    void OnCreatePhantom (wxCommandEvent& event);
+    void OnCreatePhantom (wxCommandEvent& event);\r
+    void OnCreateFilter (wxCommandEvent& event);
     void OnExit (wxCommandEvent& event);
 
     void OnUpdateUI (wxUpdateUIEvent& event);
@@ -106,6 +120,11 @@ public:
        { return m_docManager; }
 
     wxString getUntitledFilename();
+\r
+    void getCompatibleImages (const ImageFileDocument* pIFDoc, std::vector<ImageFileDocument*>& vecIF);\r
+\r
+    bool getSetModifyNewDocs() const\r
+    { return true; }\r
 
 private:
     wxDocManager* m_docManager;
@@ -126,16 +145,43 @@ extern class CTSimApp* theApp;
 enum {
     MAINMENU_HELP_ABOUT = 500,
     MAINMENU_HELP_CONTENTS,
-    MAINMENU_FILE_CREATE_PHANTOM,
-    MAINMENU_FILE_EXIT,
+    MAINMENU_FILE_CREATE_PHANTOM,\r
+    MAINMENU_FILE_CREATE_FILTER,
+    MAINMENU_FILE_EXIT,\r
     IFMENU_FILE_PROPERTIES,
     PJMENU_FILE_PROPERTIES,
     PHMMENU_FILE_PROPERTIES,
-    PJMENU_PROCESS_RECONSTRUCT,
+    PJMENU_PROCESS_RECONSTRUCT,\r
+    IFMENU_FILE_EXPORT,\r
+       IFMENU_PLOT_ROW,\r
+       IFMENU_PLOT_COL,
     IFMENU_VIEW_SCALE_AUTO,
-    IFMENU_VIEW_SCALE_MINMAX,
+    IFMENU_VIEW_SCALE_MINMAX,\r
+       IFMENU_COMPARE_IMAGES,\r
+       IFMENU_COMPARE_ROW,\r
+       IFMENU_COMPARE_COL,\r
+  IFMENU_IMAGE_SCALESIZE,\r
+  IFMENU_IMAGE_ADD,\r
+  IFMENU_IMAGE_SUBTRACT,\r
+  IFMENU_IMAGE_MULTIPLY,\r
+  IFMENU_IMAGE_DIVIDE,\r
+  IFMENU_FILTER_INVERTVALUES,\r
+  IFMENU_FILTER_SQRT,\r
+  IFMENU_FILTER_SQUARE,\r
+  IFMENU_FILTER_LOG,\r
+  IFMENU_FILTER_EXP,\r
+  IFMENU_FILTER_FOURIER,\r
+  IFMENU_FILTER_INVERSE_FOURIER,\r
+  IFMENU_FILTER_FFT,\r
+  IFMENU_FILTER_IFFT,\r
+  IFMENU_FILTER_MAGNITUDE,\r
+  IFMENU_FILTER_PHASE,\r
+  IFMENU_FILTER_SHUFFLENATURALTOFOURIERORDER,\r
+  IFMENU_FILTER_SHUFFLEFOURIERTONATURALORDER,\r
     PHMMENU_PROCESS_RASTERIZE,
-    PHMMENU_PROCESS_PROJECTIONS,
+    PHMMENU_PROCESS_PROJECTIONS,\r
+       PLOTMENU_VIEW_SCALE_MINMAX,\r
+       PLOTMENU_VIEW_SCALE_AUTO,
     MAINMENU_WINDOW_BASE,
 };