From 2c5d11b67b35f93b2292c1ca56d0c9fc89608921 Mon Sep 17 00:00:00 2001 From: Jody Northup Date: Tue, 7 Jul 2009 07:50:40 +0000 Subject: Removed PixelFormat convenience constructors at behest of Max and Eugene. svn-id: r42207 --- backends/platform/sdl/graphics.cpp | 2 +- backends/platform/sdl/sdl.cpp | 4 +-- backends/platform/sdl/sdl.h | 47 +++++++++++++++++---------- common/system.h | 17 ++++++---- engines/groovie/groovie.cpp | 4 +-- engines/scumm/scumm.cpp | 3 +- graphics/cursorman.cpp | 2 +- graphics/cursorman.h | 4 +-- graphics/pixelformat.h | 65 ++------------------------------------ 9 files changed, 53 insertions(+), 95 deletions(-) diff --git a/backends/platform/sdl/graphics.cpp b/backends/platform/sdl/graphics.cpp index 27f32ee8d2..95a3276fa5 100644 --- a/backends/platform/sdl/graphics.cpp +++ b/backends/platform/sdl/graphics.cpp @@ -361,7 +361,7 @@ void OSystem_SDL::initSize(uint w, uint h, const Graphics::PixelFormat *format) //avoid redundant format changes Graphics::PixelFormat newFormat; if (!format) - newFormat = Graphics::PixelFormat::createFormatCLUT8(); + newFormat = Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); else newFormat = *format; diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp index 105206ec07..f7bd71361f 100644 --- a/backends/platform/sdl/sdl.cpp +++ b/backends/platform/sdl/sdl.cpp @@ -197,8 +197,8 @@ OSystem_SDL::OSystem_SDL() #endif _hwscreen(0), _screen(0), _tmpscreen(0), #ifdef ENABLE_RGB_COLOR - _screenFormat(Graphics::PixelFormat::createFormatCLUT8()), - _cursorFormat(Graphics::PixelFormat::createFormatCLUT8()), + _screenFormat(Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0)), + _cursorFormat(Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0)), #endif _overlayVisible(false), _overlayscreen(0), _tmpscreen2(0), diff --git a/backends/platform/sdl/sdl.h b/backends/platform/sdl/sdl.h index 68dfe64d53..b8ab2f6d97 100644 --- a/backends/platform/sdl/sdl.h +++ b/backends/platform/sdl/sdl.h @@ -94,29 +94,44 @@ public: if (HWFormat->BitsPerPixel >= 32) { list.push_back(Graphics::PixelFormat::createFormatRGBA8888()); - list.push_back(Graphics::PixelFormat::createFormatARGB8888()); - list.push_back(Graphics::PixelFormat::createFormatABGR8888()); - list.push_back(Graphics::PixelFormat::createFormatBGRA8888()); } + list.push_back(Graphics::PixelFormat(4, 0, 0, 0, 0, 16, 8, 0, 24) +); + list.push_back(Graphics::PixelFormat(4, 0, 0, 0, 0, 0, 8, 16, 24) +); + list.push_back(Graphics::PixelFormat(4, 0, 0, 0, 0, 8, 16, 24, 0) +); } if (HWFormat->BitsPerPixel >= 24) { - list.push_back(Graphics::PixelFormat::createFormatRGB888()); - list.push_back(Graphics::PixelFormat::createFormatBGR888()); + list.push_back(Graphics::PixelFormat(3, 0, 0, 0, 8, 16, 8, 0, 0) +); + list.push_back(Graphics::PixelFormat(3, 0, 0, 0, 8, 0, 8, 16, 0) +); } #endif //ENABLE_32BIT if (HWFormat->BitsPerPixel >= 16) { - list.push_back(Graphics::PixelFormat::createFormatRGB565()); - list.push_back(Graphics::PixelFormat::createFormatXRGB1555()); - list.push_back(Graphics::PixelFormat::createFormatRGB555()); - list.push_back(Graphics::PixelFormat::createFormatRGBA4444()); - list.push_back(Graphics::PixelFormat::createFormatARGB4444()); - list.push_back(Graphics::PixelFormat::createFormatBGR565()); - list.push_back(Graphics::PixelFormat::createFormatXBGR1555()); - list.push_back(Graphics::PixelFormat::createFormatBGR555()); - list.push_back(Graphics::PixelFormat::createFormatABGR4444()); - list.push_back(Graphics::PixelFormat::createFormatBGRA4444()); + list.push_back(Graphics::PixelFormat(2, 3, 2, 3, 8, 11, 5, 0, 0) +); + list.push_back(Graphics::PixelFormat(2, 3, 3, 3, 7, 10, 5, 0, 15) +); + list.push_back(Graphics::PixelFormat(2, 3, 3, 3, 8, 10, 5, 0, 0) +); + list.push_back(Graphics::PixelFormat(2, 4, 4, 4, 4, 12, 8, 4, 0) +); + list.push_back(Graphics::PixelFormat(2, 4, 4, 4, 4, 8, 4, 0, 12) +); + list.push_back(Graphics::PixelFormat(2, 3, 2, 3, 8, 0, 5, 11, 0) +); + list.push_back(Graphics::PixelFormat(2, 3, 3, 3, 7, 0, 5, 10, 15) +); + list.push_back(Graphics::PixelFormat(2, 3, 3, 3, 8, 0, 5, 10, 0) +); + list.push_back(Graphics::PixelFormat(2, 4, 4, 4, 4, 0, 4, 8, 12) +); + list.push_back(Graphics::PixelFormat(2, 4, 4, 4, 4, 4, 8, 12, 0) +); } - list.push_back(Graphics::PixelFormat::createFormatCLUT8()); + list.push_back(Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0)); return list; } #endif diff --git a/common/system.h b/common/system.h index b37797811a..63825f8401 100644 --- a/common/system.h +++ b/common/system.h @@ -368,11 +368,14 @@ public: * * EG: a backend that supports 32-bit ABGR and 16-bit 555 BGR in hardware * and provides conversion from equivalent RGB(A) modes should order its list - * 1) Graphics::PixelFormat::createFormatABGR8888() - * 2) Graphics::PixelFormat::createFormatBGR555() - * 3) Graphics::PixelFormat::createFormatRGBA8888() - * 4) Graphics::PixelFormat::createFormatRGB555() - * 5) Graphics::PixelFormat::createFormatCLUT8() + * 1) Graphics::PixelFormat(4, 0, 0, 0, 0, 0, 8, 16, 24) + + * 2) Graphics::PixelFormat(2, 3, 3, 3, 8, 0, 5, 10, 0) + + * 3) Graphics::PixelFormat(4, 0, 0, 0, 0, 24, 16, 8, 0) + * 4) Graphics::PixelFormat(2, 3, 3, 3, 8, 10, 5, 0, 0) + + * 5) Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0) * * @see Graphics::PixelFormat * @@ -384,12 +387,12 @@ public: virtual Common::List getSupportedFormats() const = 0; #else inline Graphics::PixelFormat getScreenFormat() const { - return Graphics::PixelFormat::createFormatCLUT8(); + return Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); }; inline Common::List getSupportedFormats() const { Common::List list; - list.push_back(Graphics::PixelFormat::createFormatCLUT8()); + list.push_back(Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0)); return list; }; #endif diff --git a/engines/groovie/groovie.cpp b/engines/groovie/groovie.cpp index cdf05e803b..c2f13e4f74 100644 --- a/engines/groovie/groovie.cpp +++ b/engines/groovie/groovie.cpp @@ -78,11 +78,11 @@ Common::Error GroovieEngine::run() { // Save the enabled mode as it can be both an RGB mode or CLUT8 _pixelFormat = _system->getScreenFormat(); - _mode8bit = (_pixelFormat == Graphics::PixelFormat::createFormatCLUT8()); + _mode8bit = (_pixelFormat == Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0)); break; case kGroovieT7G: initGraphics(640, 480, true); - _pixelFormat = Graphics::PixelFormat::createFormatCLUT8(); + _pixelFormat = Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); break; } diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp index c6ed7b71cc..347abee190 100644 --- a/engines/scumm/scumm.cpp +++ b/engines/scumm/scumm.cpp @@ -1085,7 +1085,8 @@ Common::Error ScummEngine::init() { (_screenWidth * _textSurfaceMultiplier > 320)); } else if (_game.features & GF_16BIT_COLOR) { #ifdef ENABLE_RGB_COLOR - Graphics::PixelFormat format = Graphics::PixelFormat::createFormatRGB555(); + Graphics::PixelFormat format = Graphics::PixelFormat(2, 3, 3, 3, 8, 10, 5, 0, 0) +; initGraphics(_screenWidth, _screenHeight, _screenWidth > 320, &format); if (format != _system->getScreenFormat()) return Common::kUnsupportedColorMode; diff --git a/graphics/cursorman.cpp b/graphics/cursorman.cpp index b77aac37cf..3dd7c1d023 100644 --- a/graphics/cursorman.cpp +++ b/graphics/cursorman.cpp @@ -138,7 +138,7 @@ void CursorManager::replaceCursor(const byte *buf, uint w, uint h, int hotspotX, if (format) cur->_format = *format; else - cur->_format = Graphics::PixelFormat::createFormatCLUT8(); + cur->_format = Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); #endif g_system->setMouseCursor(cur->_data, w, h, hotspotX, hotspotY, keycolor, targetScale, format); diff --git a/graphics/cursorman.h b/graphics/cursorman.h index ae7008f54c..b67241ab7b 100644 --- a/graphics/cursorman.h +++ b/graphics/cursorman.h @@ -181,13 +181,13 @@ private: Cursor(const byte *data, uint w, uint h, int hotspotX, int hotspotY, uint32 keycolor = 0xFFFFFFFF, int targetScale = 1, const Graphics::PixelFormat *format = NULL) { #ifdef ENABLE_RGB_COLOR if (!format) - _format = Graphics::PixelFormat::createFormatCLUT8(); + _format = Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); else _format = *format; _size = w * h * _format.bytesPerPixel; _keycolor &= ((1 << (_format.bytesPerPixel << 3)) - 1); #else - _format = Graphics::PixelFormat::createFormatCLUT8(); + _format = Graphics::PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); _size = w * h; _keycolor &= 0xFF; #endif diff --git a/graphics/pixelformat.h b/graphics/pixelformat.h index bf18197f25..d7f5e851ad 100644 --- a/graphics/pixelformat.h +++ b/graphics/pixelformat.h @@ -65,67 +65,6 @@ struct PixelFormat { rShift = RShift, gShift = GShift, bShift = BShift, aShift = AShift; } - ///////////////////////////////////////////////////////// - // Convenience functions for creating standard formats // - ///////////////////////////////////////////////////////// - - // 256 color palette. - static inline PixelFormat createFormatCLUT8() { - return PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); - } - // 2 Bytes-per-pixel modes - static inline PixelFormat createFormatRGB555() { - return PixelFormat(2, 3, 3, 3, 8, 10, 5, 0, 0); - } - static inline PixelFormat createFormatBGR555() { - return PixelFormat(2, 3, 3, 3, 8, 0, 5, 10, 0); - } - static inline PixelFormat createFormatXRGB1555() { - // Special case, alpha bit is always high in this mode. - return PixelFormat(2, 3, 3, 3, 7, 10, 5, 0, 15); - } - static inline PixelFormat createFormatXBGR1555() { - // Special case, alpha bit is always high in this mode. - return PixelFormat(2, 3, 3, 3, 7, 0, 5, 10, 15); - } - static inline PixelFormat createFormatRGB565() { - return PixelFormat(2, 3, 2, 3, 8, 11, 5, 0, 0); - } - static inline PixelFormat createFormatBGR565() { - return PixelFormat(2, 3, 2, 3, 8, 0, 5, 11, 0); - } - static inline PixelFormat createFormatRGBA4444() { - return PixelFormat(2, 4, 4, 4, 4, 12, 8, 4, 0); - } - static inline PixelFormat createFormatARGB4444() { - return PixelFormat(2, 4, 4, 4, 4, 8, 4, 0, 12); - } - static inline PixelFormat createFormatABGR4444() { - return PixelFormat(2, 4, 4, 4, 4, 0, 4, 8, 12); - } - static inline PixelFormat createFormatBGRA4444() { - return PixelFormat(2, 4, 4, 4, 4, 4, 8, 12, 0); - } - // 3 to 4 byte per pixel modes - static inline PixelFormat createFormatRGB888() { - return PixelFormat(3, 0, 0, 0, 8, 16, 8, 0, 0); - } - static inline PixelFormat createFormatBGR888() { - return PixelFormat(3, 0, 0, 0, 8, 0, 8, 16, 0); - } - static inline PixelFormat createFormatRGBA8888() { - return PixelFormat(4, 0, 0, 0, 0, 24, 16, 8, 0); - } - static inline PixelFormat createFormatARGB8888() { - return PixelFormat(4, 0, 0, 0, 0, 16 ,8, 0, 24); - } - static inline PixelFormat createFormatABGR8888() { - return PixelFormat(4, 0, 0, 0, 0, 0, 8, 16, 24); - } - static inline PixelFormat createFormatBGRA8888() { - return PixelFormat(4, 0, 0, 0, 0, 8, 16, 24, 0); - } - inline bool operator==(const PixelFormat &fmt) const { // TODO: If aLoss==8, then the value of aShift is irrelevant, and should be ignored. return 0 == memcmp(this, &fmt, sizeof(PixelFormat)); @@ -211,7 +150,7 @@ struct PixelFormat { * @param backend The higher priority list, meant to be a list of formats supported by the backend * @param frontend The lower priority list, meant to be a list of formats supported by the engine * @return The first item on the backend list that also occurs on the frontend list - * or PixelFormat::createFormatCLUT8() if no matching formats were found. + * or PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0) if no matching formats were found. */ inline PixelFormat findCompatibleFormat(Common::List backend, Common::List frontend) { #ifdef ENABLE_RGB_COLOR @@ -222,7 +161,7 @@ inline PixelFormat findCompatibleFormat(Common::List backend, Commo } } #endif - return PixelFormat::createFormatCLUT8(); + return PixelFormat(1, 8, 8, 8, 8, 0, 0, 0, 0); } } // end of namespace Graphics -- cgit v1.2.3