changeset 213:f753a7e15a73

rename SdlSurface as SdlCairoSurface
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 01 Jun 2018 18:09:09 +0200
parents 5412adf19980
children 1c5a47dda299
files Applications/Sdl/SdlCairoSurface.cpp Applications/Sdl/SdlCairoSurface.h Applications/Sdl/SdlEngine.h Applications/Sdl/SdlSurface.cpp Applications/Sdl/SdlSurface.h Resources/CMake/OrthancStoneConfiguration.cmake
diffstat 6 files changed, 149 insertions(+), 149 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Applications/Sdl/SdlCairoSurface.cpp	Fri Jun 01 18:09:09 2018 +0200
@@ -0,0 +1,93 @@
+/**
+ * Stone of Orthanc
+ * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
+ * Department, University Hospital of Liege, Belgium
+ * Copyright (C) 2017-2018 Osimis S.A., Belgium
+ *
+ * This program is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License
+ * as published by the Free Software Foundation, either version 3 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Affero General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ **/
+
+
+#include "SdlCairoSurface.h"
+
+#if ORTHANC_ENABLE_SDL == 1
+
+#include <Core/Logging.h>
+#include <Core/OrthancException.h>
+
+namespace OrthancStone
+{
+  SdlCairoSurface::SdlCairoSurface(SdlWindow& window) :
+    window_(window),
+    sdlSurface_(NULL)
+  {
+  }
+
+
+  SdlCairoSurface::~SdlCairoSurface()
+  {
+    if (sdlSurface_)
+    {
+      SDL_FreeSurface(sdlSurface_);
+    }
+  }
+
+
+  void SdlCairoSurface::SetSize(unsigned int width,
+                                unsigned int height)
+  {
+    if (cairoSurface_.get() == NULL ||
+        cairoSurface_->GetWidth() != width ||
+        cairoSurface_->GetHeight() != height)
+    {
+      cairoSurface_.reset(new CairoSurface(width, height));
+
+      // TODO Big endian?
+      static const uint32_t rmask = 0x00ff0000;
+      static const uint32_t gmask = 0x0000ff00;
+      static const uint32_t bmask = 0x000000ff;
+
+      if (sdlSurface_)
+      {
+        SDL_FreeSurface(sdlSurface_);
+      }
+
+      sdlSurface_ = SDL_CreateRGBSurfaceFrom(cairoSurface_->GetBuffer(), width, height, 32,
+                                             cairoSurface_->GetPitch(), rmask, gmask, bmask, 0);
+      if (!sdlSurface_)
+      {
+        LOG(ERROR) << "Cannot create a SDL surface from a Cairo surface";
+        throw Orthanc::OrthancException(Orthanc::ErrorCode_InternalError);
+      }
+    }
+  }
+
+
+  void SdlCairoSurface::Render(IViewport& viewport)
+  {
+    if (cairoSurface_.get() == NULL)
+    {
+      throw Orthanc::OrthancException(Orthanc::ErrorCode_BadSequenceOfCalls);
+    }
+
+    Orthanc::ImageAccessor target = cairoSurface_->GetAccessor();
+
+    if (viewport.Render(target))
+    {
+      window_.Render(sdlSurface_);
+    }
+  }
+}
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Applications/Sdl/SdlCairoSurface.h	Fri Jun 01 18:09:09 2018 +0200
@@ -0,0 +1,53 @@
+/**
+ * Stone of Orthanc
+ * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
+ * Department, University Hospital of Liege, Belgium
+ * Copyright (C) 2017-2018 Osimis S.A., Belgium
+ *
+ * This program is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License
+ * as published by the Free Software Foundation, either version 3 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Affero General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ **/
+
+
+#pragma once
+
+#if ORTHANC_ENABLE_SDL == 1
+
+#include "SdlWindow.h"
+#include "../../Framework/Viewport/CairoSurface.h"
+#include "../../Framework/Viewport/IViewport.h"
+
+#include <boost/thread/mutex.hpp>
+
+namespace OrthancStone
+{
+  class SdlCairoSurface : public boost::noncopyable
+  {
+  private:
+    std::auto_ptr<CairoSurface>  cairoSurface_;
+    SdlWindow&                   window_;
+    SDL_Surface*                 sdlSurface_;
+
+  public:
+    SdlCairoSurface(SdlWindow& window);
+
+    ~SdlCairoSurface();
+
+    void SetSize(unsigned int width,
+                 unsigned int height);
+
+    void Render(IViewport& viewport);
+  };
+}
+
+#endif
--- a/Applications/Sdl/SdlEngine.h	Fri Jun 01 17:48:47 2018 +0200
+++ b/Applications/Sdl/SdlEngine.h	Fri Jun 01 18:09:09 2018 +0200
@@ -23,7 +23,7 @@
 
 #if ORTHANC_ENABLE_SDL == 1
 
-#include "SdlSurface.h"
+#include "SdlCairoSurface.h"
 #include "../BasicApplicationContext.h"
 
 namespace OrthancStone
@@ -33,7 +33,7 @@
   private:
     SdlWindow&                window_;
     BasicApplicationContext&  context_;
-    SdlSurface                surface_;
+    SdlCairoSurface           surface_;
     bool                      viewportChanged_;
 
     void SetSize(BasicApplicationContext::ViewportLocker& locker,
--- a/Applications/Sdl/SdlSurface.cpp	Fri Jun 01 17:48:47 2018 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,93 +0,0 @@
-/**
- * Stone of Orthanc
- * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
- * Department, University Hospital of Liege, Belgium
- * Copyright (C) 2017-2018 Osimis S.A., Belgium
- *
- * This program is free software: you can redistribute it and/or
- * modify it under the terms of the GNU Affero General Public License
- * as published by the Free Software Foundation, either version 3 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Affero General Public License for more details.
- * 
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- **/
-
-
-#include "SdlSurface.h"
-
-#if ORTHANC_ENABLE_SDL == 1
-
-#include <Core/Logging.h>
-#include <Core/OrthancException.h>
-
-namespace OrthancStone
-{
-  SdlSurface::SdlSurface(SdlWindow& window) :
-    window_(window),
-    sdlSurface_(NULL)
-  {
-  }
-
-
-  SdlSurface::~SdlSurface()
-  {
-    if (sdlSurface_)
-    {
-      SDL_FreeSurface(sdlSurface_);
-    }
-  }
-
-
-  void SdlSurface::SetSize(unsigned int width,
-                           unsigned int height)
-  {
-    if (cairoSurface_.get() == NULL ||
-        cairoSurface_->GetWidth() != width ||
-        cairoSurface_->GetHeight() != height)
-    {
-      cairoSurface_.reset(new CairoSurface(width, height));
-
-      // TODO Big endian?
-      static const uint32_t rmask = 0x00ff0000;
-      static const uint32_t gmask = 0x0000ff00;
-      static const uint32_t bmask = 0x000000ff;
-
-      if (sdlSurface_)
-      {
-        SDL_FreeSurface(sdlSurface_);
-      }
-
-      sdlSurface_ = SDL_CreateRGBSurfaceFrom(cairoSurface_->GetBuffer(), width, height, 32,
-                                             cairoSurface_->GetPitch(), rmask, gmask, bmask, 0);
-      if (!sdlSurface_)
-      {
-        LOG(ERROR) << "Cannot create a SDL surface from a Cairo surface";
-        throw Orthanc::OrthancException(Orthanc::ErrorCode_InternalError);
-      }
-    }
-  }
-
-
-  void SdlSurface::Render(IViewport& viewport)
-  {
-    if (cairoSurface_.get() == NULL)
-    {
-      throw Orthanc::OrthancException(Orthanc::ErrorCode_BadSequenceOfCalls);
-    }
-
-    Orthanc::ImageAccessor target = cairoSurface_->GetAccessor();
-
-    if (viewport.Render(target))
-    {
-      window_.Render(sdlSurface_);
-    }
-  }
-}
-
-#endif
--- a/Applications/Sdl/SdlSurface.h	Fri Jun 01 17:48:47 2018 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/**
- * Stone of Orthanc
- * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
- * Department, University Hospital of Liege, Belgium
- * Copyright (C) 2017-2018 Osimis S.A., Belgium
- *
- * This program is free software: you can redistribute it and/or
- * modify it under the terms of the GNU Affero General Public License
- * as published by the Free Software Foundation, either version 3 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Affero General Public License for more details.
- * 
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- **/
-
-
-#pragma once
-
-#if ORTHANC_ENABLE_SDL == 1
-
-#include "SdlWindow.h"
-#include "../../Framework/Viewport/CairoSurface.h"
-#include "../../Framework/Viewport/IViewport.h"
-
-#include <boost/thread/mutex.hpp>
-
-namespace OrthancStone
-{
-  class SdlSurface : public boost::noncopyable
-  {
-  private:
-    std::auto_ptr<CairoSurface>  cairoSurface_;
-    SdlWindow&                   window_;
-    SDL_Surface*                 sdlSurface_;
-
-  public:
-    SdlSurface(SdlWindow& window);
-
-    ~SdlSurface();
-
-    void SetSize(unsigned int width,
-                 unsigned int height);
-
-    void Render(IViewport& viewport);
-  };
-}
-
-#endif
--- a/Resources/CMake/OrthancStoneConfiguration.cmake	Fri Jun 01 17:48:47 2018 +0200
+++ b/Resources/CMake/OrthancStoneConfiguration.cmake	Fri Jun 01 18:09:09 2018 +0200
@@ -146,7 +146,7 @@
     ${ORTHANC_STONE_DIR}/Applications/BasicApplicationContext.cpp
     ${ORTHANC_STONE_DIR}/Applications/IBasicApplication.cpp
     ${ORTHANC_STONE_DIR}/Applications/Sdl/SdlEngine.cpp
-    ${ORTHANC_STONE_DIR}/Applications/Sdl/SdlSurface.cpp
+    ${ORTHANC_STONE_DIR}/Applications/Sdl/SdlCairoSurface.cpp
     ${ORTHANC_STONE_DIR}/Applications/Sdl/SdlWindow.cpp
     )
 endif()