blob: a98c426e7821df4199fc13e73584adc73d34e2d9 [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#pragma once
#include "flutter/fml/macros.h"
#include "impeller/aiks/aiks_context.h"
#include "impeller/aiks/aiks_playground_inspector.h"
#include "impeller/aiks/picture.h"
#include "impeller/playground/playground_test.h"
#include "impeller/typographer/typographer_context.h"
namespace impeller {
class AiksPlayground : public PlaygroundTest {
public:
using AiksPlaygroundCallback =
std::function<std::optional<Picture>(AiksContext& renderer)>;
AiksPlayground();
~AiksPlayground();
void TearDown() override;
void SetTypographerContext(
std::shared_ptr<TypographerContext> typographer_context);
bool OpenPlaygroundHere(Picture picture);
bool OpenPlaygroundHere(AiksPlaygroundCallback callback);
private:
std::shared_ptr<TypographerContext> typographer_context_;
AiksInspector inspector_;
AiksPlayground(const AiksPlayground&) = delete;
AiksPlayground& operator=(const AiksPlayground&) = delete;
};
} // namespace impeller