| /* | |
| * Copyright 2019 Google LLC | |
| * | |
| * Use of this source code is governed by a BSD-style license that can be | |
| * found in the LICENSE file. | |
| */ | |
| #ifndef SkAutoreleasePool_DEFINED | |
| #define SkAutoreleasePool_DEFINED | |
| #include "include/private/SkFeatures.h" | |
| /* | |
| * Helper class for managing an autorelease pool for Metal. On other platforms this will | |
| * do nothing so there's no need to #ifdef it out. | |
| */ | |
| #if defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS) | |
| class AutoreleasePool { | |
| public: | |
| AutoreleasePool(); | |
| ~AutoreleasePool(); | |
| void drain(); | |
| private: | |
| void* fPool; | |
| }; | |
| #else | |
| class AutoreleasePool { | |
| public: | |
| AutoreleasePool() {} | |
| ~AutoreleasePool() = default; | |
| void drain() {} | |
| }; | |
| #endif | |
| #endif |