Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(620)

Side by Side Diff: include/core/SkBitmap.h

Issue 200853002: don't reference config() -- use colorType() instead (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2006 The Android Open Source Project 2 * Copyright 2006 The Android Open Source Project
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef SkBitmap_DEFINED 8 #ifndef SkBitmap_DEFINED
9 #define SkBitmap_DEFINED 9 #define SkBitmap_DEFINED
10 10
(...skipping 453 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 * modifications will be lost when unlockPixels() is called.) 464 * modifications will be lost when unlockPixels() is called.)
465 */ 465 */
466 bool lockPixelsAreWritable() const; 466 bool lockPixelsAreWritable() const;
467 467
468 /** Call this to be sure that the bitmap is valid enough to be drawn (i.e. 468 /** Call this to be sure that the bitmap is valid enough to be drawn (i.e.
469 it has non-null pixels, and if required by its config, it has a 469 it has non-null pixels, and if required by its config, it has a
470 non-null colortable. Returns true if all of the above are met. 470 non-null colortable. Returns true if all of the above are met.
471 */ 471 */
472 bool readyToDraw() const { 472 bool readyToDraw() const {
473 return this->getPixels() != NULL && 473 return this->getPixels() != NULL &&
474 (this->config() != kIndex8_Config || NULL != fColorTable); 474 (this->colorType() != kIndex_8_SkColorType || NULL != fColorTable );
475 } 475 }
476 476
477 /** Returns the pixelRef's texture, or NULL 477 /** Returns the pixelRef's texture, or NULL
478 */ 478 */
479 GrTexture* getTexture() const; 479 GrTexture* getTexture() const;
480 480
481 /** Return the bitmap's colortable, if it uses one (i.e. colorType is 481 /** Return the bitmap's colortable, if it uses one (i.e. colorType is
482 Index_8) and the pixels are locked. 482 Index_8) and the pixels are locked.
483 Otherwise returns NULL. Does not affect the colortable's 483 Otherwise returns NULL. Does not affect the colortable's
484 reference count. 484 reference count.
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
883 private: 883 private:
884 SkColorTable* fCTable; 884 SkColorTable* fCTable;
885 const SkPMColor* fColors; 885 const SkPMColor* fColors;
886 }; 886 };
887 #define SkAutoLockColors(...) SK_REQUIRE_LOCAL_VAR(SkAutoLockColors) 887 #define SkAutoLockColors(...) SK_REQUIRE_LOCAL_VAR(SkAutoLockColors)
888 888
889 /////////////////////////////////////////////////////////////////////////////// 889 ///////////////////////////////////////////////////////////////////////////////
890 890
891 inline uint32_t* SkBitmap::getAddr32(int x, int y) const { 891 inline uint32_t* SkBitmap::getAddr32(int x, int y) const {
892 SkASSERT(fPixels); 892 SkASSERT(fPixels);
893 SkASSERT(this->config() == kARGB_8888_Config); 893 SkASSERT(4 == this->bytesPerPixel());
894 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height()); 894 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height());
895 return (uint32_t*)((char*)fPixels + y * fRowBytes + (x << 2)); 895 return (uint32_t*)((char*)fPixels + y * fRowBytes + (x << 2));
896 } 896 }
897 897
898 inline uint16_t* SkBitmap::getAddr16(int x, int y) const { 898 inline uint16_t* SkBitmap::getAddr16(int x, int y) const {
899 SkASSERT(fPixels); 899 SkASSERT(fPixels);
900 SkASSERT(this->config() == kRGB_565_Config || this->config() == kARGB_4444_C onfig); 900 SkASSERT(2 == this->bytesPerPixel());
901 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height()); 901 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height());
902 return (uint16_t*)((char*)fPixels + y * fRowBytes + (x << 1)); 902 return (uint16_t*)((char*)fPixels + y * fRowBytes + (x << 1));
903 } 903 }
904 904
905 inline uint8_t* SkBitmap::getAddr8(int x, int y) const { 905 inline uint8_t* SkBitmap::getAddr8(int x, int y) const {
906 SkASSERT(fPixels); 906 SkASSERT(fPixels);
907 SkASSERT(this->config() == kA8_Config || this->config() == kIndex8_Config); 907 SkASSERT(1 == this->bytesPerPixel());
908 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height()); 908 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height());
909 return (uint8_t*)fPixels + y * fRowBytes + x; 909 return (uint8_t*)fPixels + y * fRowBytes + x;
910 } 910 }
911 911
912 inline SkPMColor SkBitmap::getIndex8Color(int x, int y) const { 912 inline SkPMColor SkBitmap::getIndex8Color(int x, int y) const {
913 SkASSERT(fPixels); 913 SkASSERT(fPixels);
914 SkASSERT(this->config() == kIndex8_Config); 914 SkASSERT(kIndex_8_SkColorType == this->colorType());
915 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height()); 915 SkASSERT((unsigned)x < (unsigned)this->width() && (unsigned)y < (unsigned)th is->height());
916 SkASSERT(fColorTable); 916 SkASSERT(fColorTable);
917 return (*fColorTable)[*((const uint8_t*)fPixels + y * fRowBytes + x)]; 917 return (*fColorTable)[*((const uint8_t*)fPixels + y * fRowBytes + x)];
918 } 918 }
919 919
920 /////////////////////////////////////////////////////////////////////////////// 920 ///////////////////////////////////////////////////////////////////////////////
921 // 921 //
922 // Helpers until we can fully deprecate SkBitmap::Config 922 // Helpers until we can fully deprecate SkBitmap::Config
923 // 923 //
924 extern SkBitmap::Config SkColorTypeToBitmapConfig(SkColorType); 924 extern SkBitmap::Config SkColorTypeToBitmapConfig(SkColorType);
925 extern SkColorType SkBitmapConfigToColorType(SkBitmap::Config); 925 extern SkColorType SkBitmapConfigToColorType(SkBitmap::Config);
926 926
927 #endif 927 #endif
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698