/* * Copyright 2012 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef SkCountdown_DEFINED #define SkCountdown_DEFINED #include "SkCondVar.h" #include "SkRunnable.h" #include "SkTypes.h" class SkCountdown : public SkRunnable { public: explicit SkCountdown(int32_t count); /** * Resets the countdown to the count provided. */ void reset(int32_t count); virtual void run() SK_OVERRIDE; /** * Blocks until run() has been called count times. */ void wait(); private: SkCondVar fReady; int32_t fCount; }; #endif