| OLD | NEW | 
|    1  |    1  | 
|    2 /* |    2 /* | 
|    3  * Copyright 2006 The Android Open Source Project |    3  * Copyright 2006 The Android Open Source Project | 
|    4  * |    4  * | 
|    5  * Use of this source code is governed by a BSD-style license that can be |    5  * Use of this source code is governed by a BSD-style license that can be | 
|    6  * found in the LICENSE file. |    6  * found in the LICENSE file. | 
|    7  */ |    7  */ | 
|    8  |    8  | 
|    9  |    9  | 
|   10 #ifndef SkTemplates_DEFINED |   10 #ifndef SkTemplates_DEFINED | 
| (...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  323  */ |  323  */ | 
|  324 template <typename T> class SkAutoTMalloc : SkNoncopyable { |  324 template <typename T> class SkAutoTMalloc : SkNoncopyable { | 
|  325 public: |  325 public: | 
|  326     /** Takes ownership of the ptr. The ptr must be a value which can be passed 
     to sk_free. */ |  326     /** Takes ownership of the ptr. The ptr must be a value which can be passed 
     to sk_free. */ | 
|  327     explicit SkAutoTMalloc(T* ptr = NULL) { |  327     explicit SkAutoTMalloc(T* ptr = NULL) { | 
|  328         fPtr = ptr; |  328         fPtr = ptr; | 
|  329     } |  329     } | 
|  330  |  330  | 
|  331     /** Allocates space for 'count' Ts. */ |  331     /** Allocates space for 'count' Ts. */ | 
|  332     explicit SkAutoTMalloc(size_t count) { |  332     explicit SkAutoTMalloc(size_t count) { | 
|  333         fPtr = (T*)sk_malloc_flags(count * sizeof(T), SK_MALLOC_THROW | SK_MALLO
     C_TEMP); |  333         fPtr = (T*)sk_malloc_flags(count * sizeof(T), SK_MALLOC_THROW); | 
|  334     } |  334     } | 
|  335  |  335  | 
|  336     ~SkAutoTMalloc() { |  336     ~SkAutoTMalloc() { | 
|  337         sk_free(fPtr); |  337         sk_free(fPtr); | 
|  338     } |  338     } | 
|  339  |  339  | 
|  340     /** Resize the memory area pointed to by the current ptr preserving contents
     . */ |  340     /** Resize the memory area pointed to by the current ptr preserving contents
     . */ | 
|  341     void realloc(size_t count) { |  341     void realloc(size_t count) { | 
|  342         fPtr = reinterpret_cast<T*>(sk_realloc_throw(fPtr, count * sizeof(T))); |  342         fPtr = reinterpret_cast<T*>(sk_realloc_throw(fPtr, count * sizeof(T))); | 
|  343     } |  343     } | 
|  344  |  344  | 
|  345     /** Resize the memory area pointed to by the current ptr without preserving 
     contents. */ |  345     /** Resize the memory area pointed to by the current ptr without preserving 
     contents. */ | 
|  346     void reset(size_t count) { |  346     void reset(size_t count) { | 
|  347         sk_free(fPtr); |  347         sk_free(fPtr); | 
|  348         fPtr = (T*)sk_malloc_flags(count * sizeof(T), SK_MALLOC_THROW | SK_MALLO
     C_TEMP); |  348         fPtr = (T*)sk_malloc_flags(count * sizeof(T), SK_MALLOC_THROW); | 
|  349     } |  349     } | 
|  350  |  350  | 
|  351     T* get() const { return fPtr; } |  351     T* get() const { return fPtr; } | 
|  352  |  352  | 
|  353     operator T*() { |  353     operator T*() { | 
|  354         return fPtr; |  354         return fPtr; | 
|  355     } |  355     } | 
|  356  |  356  | 
|  357     operator const T*() const { |  357     operator const T*() const { | 
|  358         return fPtr; |  358         return fPtr; | 
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  470     /** |  470     /** | 
|  471      * Returns void* because this object does not initialize the |  471      * Returns void* because this object does not initialize the | 
|  472      * memory. Use placement new for types that require a cons. |  472      * memory. Use placement new for types that require a cons. | 
|  473      */ |  473      */ | 
|  474     void* get() { return fStorage.get(); } |  474     void* get() { return fStorage.get(); } | 
|  475 private: |  475 private: | 
|  476     SkAlignedSStorage<sizeof(T)*N> fStorage; |  476     SkAlignedSStorage<sizeof(T)*N> fStorage; | 
|  477 }; |  477 }; | 
|  478  |  478  | 
|  479 #endif |  479 #endif | 
| OLD | NEW |