Move SkTemplates.h to private.
authorbungeman <bungeman@google.com>
Wed, 19 Aug 2015 18:56:48 +0000 (11:56 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 19 Aug 2015 18:56:48 +0000 (11:56 -0700)
SkTemplates.h contains a number of Skia specific utilities which are
not designed for external use. In addition to reducing the external
support burden, this will allow Skia to freely refactor this file.

Review URL: https://codereview.chromium.org/1272293004

37 files changed:
gyp/core.gypi
gyp/sfnt.gyp
gyp/tools.gyp
include/codec/SkCodec.h
include/codec/SkScanlineDecoder.h
include/core/SkImageFilter.h
include/core/SkPostConfig.h
include/core/SkRefCnt.h
include/core/SkTArray.h
include/core/SkTLazy.h
include/core/SkWriter32.h
include/gpu/GrResourceKey.h
include/ports/SkRemotableFontMgr.h
include/private/SkTemplates.h [moved from include/core/SkTemplates.h with 100% similarity]
include/utils/win/SkAutoCoInitialize.h
include/utils/win/SkTScopedComPtr.h
include/xml/SkDOM.h
src/animator/SkDrawShader.cpp
src/codec/SkJpegDecoderMgr.h
src/core/SkBBoxHierarchy.h
src/core/SkBigPicture.h
src/core/SkBitmapController.cpp
src/core/SkBitmapProcShader.cpp
src/core/SkBitmapProcShader.h
src/core/SkBitmapProcState.h
src/core/SkPictureRecord.h
src/core/SkTLList.h
src/effects/gradients/SkGradientShaderPriv.h
src/gpu/GrDefaultPathRenderer.h
src/gpu/GrStrokeInfo.h
src/gpu/GrTRecorder.h
src/image/SkImage_Base.h
src/pdf/SkPDFGraphicState.h
src/sfnt/SkOTTableTypes.h
src/utils/win/SkDWrite.h
tools/skdiff_main.cpp
tools/skdiff_utils.cpp

index dd0ce04..c35592e 100644 (file)
         '<(skia_include_path)/core/SkTInternalLList.h',
         '<(skia_include_path)/core/SkTRegistry.h',
         '<(skia_include_path)/core/SkTSearch.h',
-        '<(skia_include_path)/core/SkTemplates.h',
         '<(skia_include_path)/core/SkTextBlob.h',
         '<(skia_include_path)/core/SkTime.h',
         '<(skia_include_path)/core/SkTLazy.h',
         '<(skia_include_path)/core/SkUtils.h',
         '<(skia_include_path)/core/SkWriter32.h',
         '<(skia_include_path)/core/SkXfermode.h',
+        '<(skia_include_path)/private/SkTemplates.h',
 
         # Lazy decoding:
         '<(skia_src_path)/lazy/SkCachingPixelRef.cpp',
index c129570..7ff635b 100644 (file)
@@ -13,6 +13,7 @@
         'core.gyp:*',
       ],
       'include_dirs': [
+        '../include/private',
         '../src/core',
         '../src/sfnt',
       ],
index 2f25037..d7b2e13 100644 (file)
       'dependencies': [
         'skia_lib.gyp:skia_lib',
       ],
+      'xcode_settings': {
+        'conditions': [
+          [ 'skia_osx_deployment_target==""', {
+            'MACOSX_DEPLOYMENT_TARGET': '10.7', # -mmacos-version-min, passed in env to ld.
+          }, {
+            'MACOSX_DEPLOYMENT_TARGET': '<(skia_osx_deployment_target)',
+          }],
+        ],
+        'CLANG_CXX_LIBRARY': 'libc++',
+      },
     },
     {
       'target_name': 'skpdiff',
index ae9524b..bdfa232 100644 (file)
@@ -8,12 +8,12 @@
 #ifndef SkCodec_DEFINED
 #define SkCodec_DEFINED
 
+#include "../private/SkTemplates.h"
 #include "SkColor.h"
 #include "SkEncodedFormat.h"
 #include "SkImageInfo.h"
 #include "SkSize.h"
 #include "SkStream.h"
-#include "SkTemplates.h"
 #include "SkTypes.h"
 
 class SkData;
index c547f67..7946973 100644 (file)
@@ -8,10 +8,10 @@
 #ifndef SkScanlineDecoder_DEFINED
 #define SkScanlineDecoder_DEFINED
 
-#include "SkTypes.h"
+#include "../private/SkTemplates.h"
 #include "SkCodec.h"
-#include "SkTemplates.h"
 #include "SkImageInfo.h"
+#include "SkTypes.h"
 
 class SkScanlineDecoder : public SkNoncopyable {
 public:
index dce6b13..9dc7507 100644 (file)
@@ -8,12 +8,12 @@
 #ifndef SkImageFilter_DEFINED
 #define SkImageFilter_DEFINED
 
+#include "../private/SkTemplates.h"
 #include "SkFilterQuality.h"
 #include "SkFlattenable.h"
 #include "SkMatrix.h"
 #include "SkRect.h"
 #include "SkSurfaceProps.h"
-#include "SkTemplates.h"
 
 class GrFragmentProcessor;
 class GrProcessorDataManager;
index 8ff1f06..f4ce102 100644 (file)
 ///////////////////////////////////////////////////////////////////////////////
 
 #ifndef SkNEW
+#  include <new>
 #  define SkNEW(type_name)                           (new type_name)
 #  define SkNEW_ARGS(type_name, args)                (new type_name args)
 #  define SkNEW_ARRAY(type_name, count)              (new type_name[(count)])
index 995bdfb..bf97dc8 100644 (file)
@@ -1,4 +1,3 @@
-
 /*
  * Copyright 2006 The Android Open Source Project
  *
@@ -6,12 +5,11 @@
  * found in the LICENSE file.
  */
 
-
 #ifndef SkRefCnt_DEFINED
 #define SkRefCnt_DEFINED
 
 #include "SkAtomics.h"
-#include "SkTemplates.h"
+#include "SkTypes.h"
 
 /** \class SkRefCntBase
 
index 4bf1d70..9dc5880 100644 (file)
@@ -8,9 +8,10 @@
 #ifndef SkTArray_DEFINED
 #define SkTArray_DEFINED
 
-#include <new>
+#include "../private/SkTemplates.h"
 #include "SkTypes.h"
-#include "SkTemplates.h"
+
+#include <new>
 
 template <typename T, bool MEM_COPY = false> class SkTArray;
 
index 61c2b18..60d8161 100644 (file)
@@ -8,7 +8,7 @@
 #ifndef SkTLazy_DEFINED
 #define SkTLazy_DEFINED
 
-#include "SkTemplates.h"
+#include "../private/SkTemplates.h"
 #include "SkTypes.h"
 #include <new>
 
index a7cfbdc..86c27a5 100644 (file)
@@ -10,6 +10,7 @@
 #ifndef SkWriter32_DEFINED
 #define SkWriter32_DEFINED
 
+#include "../private/SkTemplates.h"
 #include "SkData.h"
 #include "SkMatrix.h"
 #include "SkPath.h"
@@ -19,7 +20,6 @@
 #include "SkRegion.h"
 #include "SkScalar.h"
 #include "SkStream.h"
-#include "SkTemplates.h"
 #include "SkTypes.h"
 
 class SK_API SkWriter32 : SkNoncopyable {
index 0a97c20..96e9988 100644 (file)
@@ -9,10 +9,10 @@
 #ifndef GrResourceKey_DEFINED
 #define GrResourceKey_DEFINED
 
+#include "../private/SkTemplates.h"
 #include "GrTypes.h"
 #include "SkData.h"
 #include "SkOnce.h"
-#include "SkTemplates.h"
 
 uint32_t GrResourceKeyHash(const uint32_t* data, size_t size);
 
index 23abd7f..ddc8e50 100644 (file)
@@ -8,9 +8,9 @@
 #ifndef SkRemotableFontMgr_DEFINED
 #define SkRemotableFontMgr_DEFINED
 
+#include "../private/SkTemplates.h"
 #include "SkFontStyle.h"
 #include "SkRefCnt.h"
-#include "SkTemplates.h"
 #include "SkTypes.h"
 
 class SkDataTable;
index f671e68..1123002 100644 (file)
@@ -1,4 +1,3 @@
-
 /*
  * Copyright 2011 Google Inc.
  *
@@ -6,13 +5,10 @@
  * found in the LICENSE file.
  */
 
-
 #ifndef SkAutoCo_DEFINED
 #define SkAutoCo_DEFINED
 
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#include "SkTemplates.h"
+#include "SkTypes.h"
 
 /**
  * An instance of this class initializes COM on creation
index 38d1048..b906fb7 100644 (file)
@@ -1,4 +1,3 @@
-
 /*
  * Copyright 2011 Google Inc.
  *
@@ -10,7 +9,6 @@
 #define SkTScopedComPtr_DEFINED
 
 #include "SkTypes.h"
-#include "SkTemplates.h"
 
 template<typename T>
 class SkBlockComRef : public T {
index df5766f..14d79cf 100644 (file)
@@ -10,9 +10,9 @@
 #ifndef SkDOM_DEFINED
 #define SkDOM_DEFINED
 
+#include "../private/SkTemplates.h"
 #include "SkChunkAlloc.h"
 #include "SkScalar.h"
-#include "SkTemplates.h"
 
 struct SkDOMNode;
 struct SkDOMAttr;
index f9f379b..29e5251 100644 (file)
@@ -11,7 +11,6 @@
 #include "SkDrawBitmap.h"
 #include "SkDrawMatrix.h"
 #include "SkDrawPaint.h"
-#include "SkTemplates.h"
 
 #if SK_USE_CONDENSED_INFO == 0
 
@@ -72,11 +71,8 @@ SkShader* SkDrawBitmapShader::getShader() {
     //
     // oops, bitmapshader no longer takes filterBitmap, but deduces it at
     // draw-time from the paint
-    SkShader* shader  = SkShader::CreateBitmapShader(image->fBitmap,
-                                                    (SkShader::TileMode) tileMode,
-                                                    (SkShader::TileMode) tileMode,
-                                                    getMatrix());
-    SkAutoTDelete<SkShader> autoDel(shader);
-    (void)autoDel.detach();
-    return shader;
+    return SkShader::CreateBitmapShader(image->fBitmap,
+                                        (SkShader::TileMode) tileMode,
+                                        (SkShader::TileMode) tileMode,
+                                        getMatrix());
 }
index e65ef52..a09a175 100644 (file)
@@ -12,7 +12,6 @@
 #include "SkCodecPriv.h"
 #include "SkJpegUtility_codec.h"
 #include "SkSwizzler.h"
-#include "SkTemplates.h"
 
 // stdio is needed for jpeglib
 #include <stdio.h>
index 795406f..63e62c2 100644 (file)
@@ -11,7 +11,6 @@
 #include "SkRect.h"
 #include "SkRefCnt.h"
 #include "SkTDArray.h"
-#include "SkTemplates.h"
 
 /**
  * Interface for a spatial data structure that stores axis-aligned bounding
@@ -37,7 +36,6 @@ public:
     // Get the root bound.
     virtual SkRect getRootBound() const = 0;
 
-
 private:
     typedef SkRefCnt INHERITED;
 };
index b7da09e..dfd6b80 100644 (file)
@@ -8,8 +8,9 @@
 #ifndef SkBigPicture_DEFINED
 #define SkBigPicture_DEFINED
 
-#include "SkPicture.h"
 #include "SkLazyPtr.h"
+#include "SkPicture.h"
+#include "SkTemplates.h"
 
 class SkBBoxHierarchy;
 class SkRecord;
index c8164a3..fb54388 100644 (file)
@@ -8,6 +8,7 @@
 #include "SkBitmap.h"
 #include "SkBitmapController.h"
 #include "SkMatrix.h"
+#include "SkTemplates.h"
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
index 9086072..678a201 100644 (file)
@@ -1,20 +1,21 @@
-
 /*
  * Copyright 2011 Google Inc.
  *
  * Use of this source code is governed by a BSD-style license that can be
  * found in the LICENSE file.
  */
+
+#include "SkBitmapProcShader.h"
+#include "SkBitmapProcState.h"
 #include "SkColorPriv.h"
+#include "SkErrorInternals.h"
+#include "SkPixelRef.h"
 #include "SkReadBuffer.h"
 #include "SkWriteBuffer.h"
-#include "SkPixelRef.h"
-#include "SkErrorInternals.h"
-#include "SkBitmapProcShader.h"
 
 #if SK_SUPPORT_GPU
-#include "effects/GrSimpleTextureEffect.h"
 #include "effects/GrBicubicEffect.h"
+#include "effects/GrSimpleTextureEffect.h"
 #endif
 
 SkBitmapProcShader::SkBitmapProcShader(const SkBitmap& src, TileMode tmx, TileMode tmy,
index ea16d1f..5179ff8 100644 (file)
 #define SkBitmapProcShader_DEFINED
 
 #include "SkShader.h"
-#include "SkBitmapProcState.h"
 #include "SkSmallAllocator.h"
 
+struct SkBitmapProcState;
+
 class SkBitmapProcShader : public SkShader {
 public:
     SkBitmapProcShader(const SkBitmap& src, TileMode tx, TileMode ty,
index af39004..57fd273 100644 (file)
@@ -14,6 +14,7 @@
 #include "SkMatrix.h"
 #include "SkMipMap.h"
 #include "SkPaint.h"
+#include "SkTemplates.h"
 
 typedef SkFixed3232    SkFractionalInt;
 #define SkScalarToFractionalInt(x)  SkScalarToFixed3232(x)
index 18458c6..c305f10 100644 (file)
@@ -12,7 +12,8 @@
 #include "SkFlattenable.h"
 #include "SkPicture.h"
 #include "SkPictureData.h"
-#include "SkTemplates.h"
+#include "SkTArray.h"
+#include "SkTDArray.h"
 #include "SkWriter32.h"
 
 // These macros help with packing and unpacking a single byte value and
@@ -40,7 +41,7 @@ public:
     const SkTDArray<const SkImage* >& getImageRefs() const {
         return fImageRefs;
     }
-    
+
     SkData* opData(bool deepCopy) const {
         this->validate(fWriter.bytesWritten(), 0);
 
index 5cb74cf..3543529 100644 (file)
@@ -9,7 +9,7 @@
 #define SkTLList_DEFINED
 
 #include "SkTInternalLList.h"
-#include "SkTemplates.h"
+#include "SkTypes.h"
 
 template <typename T> class SkTLList;
 template <typename T>
index 642c95f..d081d6f 100644 (file)
@@ -16,7 +16,6 @@
 #include "SkWriteBuffer.h"
 #include "SkMallocPixelRef.h"
 #include "SkUtils.h"
-#include "SkTemplates.h"
 #include "SkShader.h"
 #include "SkOnce.h"
 
index 8f82f25..8a2ce7b 100644 (file)
@@ -9,7 +9,7 @@
 #define GrDefaultPathRenderer_DEFINED
 
 #include "GrPathRenderer.h"
-#include "SkTemplates.h"
+#include "SkTypes.h"
 
 /**
  *  Subclass that renders the path using the stencil buffer to resolve fill rules
index 1cc2dfe..a820a02 100644 (file)
@@ -8,8 +8,9 @@
 #ifndef GrStrokeInfo_DEFINED
 #define GrStrokeInfo_DEFINED
 
-#include "SkStrokeRec.h"
 #include "SkPathEffect.h"
+#include "SkStrokeRec.h"
+#include "SkTemplates.h"
 
 class GrUniqueKey;
 
index 59d185f..deb007f 100644 (file)
@@ -8,7 +8,6 @@
 #ifndef GrTRecorder_DEFINED
 #define GrTRecorder_DEFINED
 
-#include "SkTemplates.h"
 #include "SkTypes.h"
 
 template<typename TBase, typename TAlign> class GrTRecorder;
index 37dcb40..38f9906 100644 (file)
@@ -11,6 +11,8 @@
 #include "SkImage.h"
 #include "SkSurface.h"
 
+#include <new>
+
 enum {
     kNeedNewImageUniqueID = 0
 };
index e989f50..1b11fe4 100644 (file)
@@ -12,7 +12,6 @@
 
 #include "SkPaint.h"
 #include "SkPDFTypes.h"
-#include "SkTemplates.h"
 #include "SkChecksum.h"
 
 class SkPDFCanon;
index 1f49518..fa76b20 100644 (file)
@@ -8,7 +8,6 @@
 #ifndef SkOTTableTypes_DEFINED
 #define SkOTTableTypes_DEFINED
 
-#include "SkTemplates.h"
 #include "SkTypes.h"
 #include "SkEndian.h"
 
index d5775c1..60e6a11 100644 (file)
@@ -8,8 +8,8 @@
 #ifndef SkDWrite_DEFINED
 #define SkDWrite_DEFINED
 
-#include "SkTemplates.h"
 #include "SkFontStyle.h"
+#include "SkTemplates.h"
 
 #include <dwrite.h>
 #include <winsdkver.h>
index fdd83a6..4646b1f 100644 (file)
@@ -15,7 +15,6 @@
 #include "SkOSFile.h"
 #include "SkStream.h"
 #include "SkTDArray.h"
-#include "SkTemplates.h"
 #include "SkTSearch.h"
 
 __SK_FORCE_IMAGE_DECODER_LINKING;
index a00ea7b..e656e3c 100644 (file)
 #include "SkImageDecoder.h"
 #include "SkImageEncoder.h"
 #include "SkStream.h"
-#include "SkTemplates.h"
 #include "SkTypes.h"
 
+#include <memory>
+
 bool are_buffers_equal(SkData* skdata1, SkData* skdata2) {
     if ((NULL == skdata1) || (NULL == skdata2)) {
         return false;
@@ -35,17 +36,15 @@ SkData* read_file(const char* file_path) {
 bool get_bitmap(SkData* fileBits, DiffResource& resource, SkImageDecoder::Mode mode) {
     SkMemoryStream stream(fileBits->data(), fileBits->size());
 
-    SkImageDecoder* codec = SkImageDecoder::Factory(&stream);
+    // In debug, the DLL will automatically be unloaded when this is deleted,
+    // but that shouldn't be a problem in release mode.
+    std::unique_ptr<SkImageDecoder> codec(SkImageDecoder::Factory(&stream));
     if (NULL == codec) {
         SkDebugf("ERROR: no codec found for <%s>\n", resource.fFullPath.c_str());
         resource.fStatus = DiffResource::kCouldNotDecode_Status;
         return false;
     }
 
-    // In debug, the DLL will automatically be unloaded when this is deleted,
-    // but that shouldn't be a problem in release mode.
-    SkAutoTDelete<SkImageDecoder> ad(codec);
-
     stream.rewind();
     if (!codec->decode(&stream, &resource.fBitmap, kN32_SkColorType, mode)) {
         SkDebugf("ERROR: codec failed for basePath <%s>\n", resource.fFullPath.c_str());