wxMaracasRendererView.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   wxMaracas
00004   Module:    $RCSfile: wxMaracasRendererView.h,v $
00005   Language:  C++
00006 
00007 =========================================================================*/
00008 
00009 #ifndef __wxMaracasRendererViewPanelH__
00010 #define __wxMaracasRendererViewPanelH__
00011 
00012 #include <vector>
00013 #include <wx/wx.h>
00014 #include "wx/aui/aui.h"
00015 #include <iostream>
00016 #include "marTypes.h"
00017 #include "vtkProp3D.h"
00018 #include "wxVtkBaseView.h"
00019 
00020 #include "wxMaracasRendererView.h"
00021 #include "wxMaracasRenderTabbedPanel.h"
00022 #include "wxMaracasMultipleVolumeRendererManager.h"
00023 #include "wxMaracasSurfaceRenderingManager.h"
00024 
00025 class  creaMaracasVisu_EXPORT  wxMaracasRendererView : public wxPanel
00026 {
00027 
00028 public:
00029         wxMaracasRendererView( wxWindow* parent, std::string path);
00030         ~wxMaracasRendererView( );
00031 
00032         static wxMaracasRendererView* getInstance(wxWindow* parent,std::string path="");
00033         static wxMaracasRendererView* getInstance();
00034 
00035         std::string getPath();
00036         wxMaracasRenderTabbedPanel* getTabbedPanel(int id) throw(char*);
00037 
00038         void setRenderer(vtkRenderer*  renderer); /* throw(char*), */   // JPR
00039         void setVtkBaseView(wxVtk3DBaseView* base);
00040         void onLoadImageFile();
00041         void addVolumes(vtkImageData* img, std::string pathfile, std::string filename);
00042         void addPanels(wxMaracasRenderTabbedPanel* wxtabs, vtkImageData* img, std::string pathfile, std::string filename);
00043 
00044         void deleteVolume(int volid);
00045         std::vector<std::string> getFiles();
00046 
00047 private:
00048         static wxMaracasRendererView* instance;
00049 
00050         std::vector<wxMaracasRenderTabbedPanel*> tabsVector;
00051         std::vector<std::string> files;
00052 
00053         wxAuiManager* wxauimanager;
00054         wxToolBar * _toolb;
00055 
00056         vtkRenderer*  _renderer;
00057         wxVtk3DBaseView* baseView;
00058         std::string _path;
00059 
00060         int _idCount;
00061 };
00062 
00063 class ToolBarEventHandlerRenderer : public wxEvtHandler
00064 {
00065         public:
00066                 ToolBarEventHandlerRenderer();
00067                 ~ToolBarEventHandlerRenderer();
00068 
00069                 void onLoadImageFile(wxCommandEvent& event);
00070 
00071         private:
00072 
00073                 DECLARE_EVENT_TABLE()
00074         };
00075 
00076 class ToolBarRenderer : public wxToolBar{
00077 
00078 public:
00079         ToolBarRenderer(wxWindow * parent,std::string iconsdir);
00080         ~ToolBarRenderer(void);
00081 
00082 private:
00083 
00084         ToolBarEventHandlerRenderer* _evthand;
00085 };
00086 
00087 #endif

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1