blob: 04640c4259f7cbcf56953f826cbcfddf23f86acb [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SERVICES_VIZ_PRIVILEGED_INTERFACES_COMPOSITING_LAYERED_WINDOW_UPDATER_MOJOM_BLINK_TEST_UTILS_H_
#define SERVICES_VIZ_PRIVILEGED_INTERFACES_COMPOSITING_LAYERED_WINDOW_UPDATER_MOJOM_BLINK_TEST_UTILS_H_
#include "services/viz/privileged/interfaces/compositing/layered_window_updater.mojom-blink.h"
namespace viz {
namespace mojom {
namespace blink {
class LayeredWindowUpdaterInterceptorForTesting : public LayeredWindowUpdater {
virtual LayeredWindowUpdater* GetForwardingInterface() = 0;
void OnAllocatedSharedMemory(const ::blink::WebSize& pixel_size, base::UnsafeSharedMemoryRegion region) override;
void Draw(DrawCallback callback) override;
};
class LayeredWindowUpdaterAsyncWaiter {
public:
explicit LayeredWindowUpdaterAsyncWaiter(LayeredWindowUpdater* proxy);
~LayeredWindowUpdaterAsyncWaiter();
void Draw(
);
private:
LayeredWindowUpdater* const proxy_;
DISALLOW_COPY_AND_ASSIGN(LayeredWindowUpdaterAsyncWaiter);
};
} // namespace blink
} // namespace mojom
} // namespace viz
#endif // SERVICES_VIZ_PRIVILEGED_INTERFACES_COMPOSITING_LAYERED_WINDOW_UPDATER_MOJOM_BLINK_TEST_UTILS_H_