00001 // Author: Steven Bergner 00002 // Created: Jan02 00003 00004 #ifndef _vuSlicerUtility_h_ 00005 #define _vuSlicerUtility_h_ 00006 00007 #include "../vuBasicUtility.h" 00008 #include "../../wxUIElements/vuTransferCanvas.h" 00009 #include "Volume/Regular/Unimodal/3d/1B/Intensity/Slicer/Slicer.h" 00010 00012 class vuSlicer : public vuBasicUtility 00013 { 00014 public: 00016 vuSlicer(); 00018 ~vuSlicer(); 00019 00021 static const char* getFileType(); 00022 00026 bool init(const char* DataFile); 00027 00028 virtual vuCamera* getCamera (); 00029 virtual vuImage* getCurrentImage (); 00030 virtual void DrawFromImage (); 00031 virtual void DrawAgain(); 00032 00033 public: 00034 //The following methods are overridden to add controls to the window. 00036 virtual void addRight(wxSizer *sizer); 00037 00038 protected: 00043 bool glInit(); 00044 00048 void glRender(); 00050 void glResize(); 00052 00056 void glOnMouse(wxMouseEvent &ev); 00057 00063 void OnChar(wxKeyEvent& event); 00064 00066 void OnSlideSlice( wxScrollEvent& event); 00067 00068 private: 00070 vu1112116 *m_Data; 00072 vuTFDesign m_TFunc; 00073 00076 wxSlider *m_SliceSlider; 00077 00079 int m_x; 00081 int m_y; 00082 00083 DECLARE_EVENT_TABLE() 00084 }; 00085 00086 #endif