/* | |
* 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 | |
/* | |
* 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. | |
*/ | |
#ifdef SK_METAL | |
class AutoreleasePool { | |
public: | |
AutoreleasePool(); | |
~AutoreleasePool(); | |
void drain(); | |
private: | |
void* fPool; | |
}; | |
#else | |
class AutoreleasePool { | |
public: | |
AutoreleasePool() {} | |
~AutoreleasePool() = default; | |
void drain() {} | |
}; | |
#endif | |
#endif |