X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=WCudaMSE%2FStudent_Cuda_Image%2Fsrc%2Fcpp%2Fcore%2FmainGL.cpp;h=fe29a86d8f8d3b4678e7cd2e6a77aa462a8b749b;hb=2fd5d915e8a9de4d957d6031d2d68088784eac3c;hp=9fbf6e8c804fae6bfbe5e145b0b8930dc0bd4260;hpb=b1138708dfa104f784170fcf2d50989156e5c5d0;p=GPU.git diff --git a/WCudaMSE/Student_Cuda_Image/src/cpp/core/mainGL.cpp b/WCudaMSE/Student_Cuda_Image/src/cpp/core/mainGL.cpp index 9fbf6e8..fe29a86 100755 --- a/WCudaMSE/Student_Cuda_Image/src/cpp/core/mainGL.cpp +++ b/WCudaMSE/Student_Cuda_Image/src/cpp/core/mainGL.cpp @@ -1,6 +1,7 @@ #include #include #include +using namespace std; #include "GLUTImageViewers.h" @@ -9,66 +10,42 @@ #include "Rippling0Provider.h" #include "RipplingProvider.h" +#include "FractalProvider.h" +#include "NewtonProvider.h" +#include "HeatTransfertProvider.h" +#include "RayTracingProvider.h" -using std::cout; -using std::endl; -using std::string; - -/*----------------------------------------------------------------------*\ - |* Declaration *| - \*---------------------------------------------------------------------*/ - -/*--------------------------------------*\ - |* Imported *| - \*-------------------------------------*/ - -/*--------------------------------------*\ - |* Public *| - \*-------------------------------------*/ - -int mainGL(void); - -/*--------------------------------------*\ - |* Private *| - \*-------------------------------------*/ - -/*----------------------------------------------------------------------*\ - |* Implementation *| - \*---------------------------------------------------------------------*/ - -/*--------------------------------------*\ - |* Public *| - \*-------------------------------------*/ +template +class Viewer + { + private: + TOutput* ptrProvider; + GLUTImageViewers viewer; + + public: + Viewer(bool isAnimation, bool isSelection, int pxFrame, int pyFrame): + ptrProvider(TProvider::createGL()), + viewer(ptrProvider, isAnimation, isSelection, pxFrame, pyFrame) + { + } + + ~Viewer() + { + delete this->ptrProvider; + } + }; int mainGL(void) { - //Rippling0Image* ptrRippling0 = Rippling0Provider::createGL(); - Image* ptrRippling = RipplingProvider::createGL(); - // TODO : Insert autres Images ... - - bool isAnimation = true; - bool isSelection = true; - - //GLUTImageViewers rippling0Viewer(ptrRippling0, isAnimation, isSelection, 0, 0); - GLUTImageViewers ripplingViewer(ptrRippling, isAnimation, isSelection, 10, 10); - // TODO : Insert here autres ImageViewers ... + // Viewer rippling0(true, true, 10, 10); + // Viewer rippling0(true, true, 10, 10); + Viewer fractalMandelbrot(true, true, 20, 20); + // Viewer fractalJulia(true, true, 30, 30); + // Viewer newtown(true, true, 20, 20); + // Viewer heatTransfert(true, false, 20, 20); + // Viewer rayTracing(true, true, 20, 20); GLUTImageViewers::runALL(); // Bloquant, Tant qu'une fenetre est ouverte - // destruction - { - //delete ptrRippling0; - delete ptrRippling; - } - return EXIT_SUCCESS; } - -/*--------------------------------------*\ - |* Private *| - \*-------------------------------------*/ - -/*----------------------------------------------------------------------*\ - |* End *| - \*---------------------------------------------------------------------*/ -