blob: 5298ecaf22fb923d1208105a54dcd9085617adcd [file] [log] [blame]
// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef PDF_INK_INK_BRUSH_FAMILY_H_
#define PDF_INK_INK_BRUSH_FAMILY_H_
#include <memory>
#include <string_view>
namespace chrome_pdf {
struct InkBrushPaint;
struct InkBrushTip;
class InkBrushFamily {
public:
static std::unique_ptr<InkBrushFamily> Create(InkBrushTip tip,
InkBrushPaint paint,
std::string_view uri_string);
virtual ~InkBrushFamily() = default;
// Note that these methods do not necessarily correspond 1:1 to method in the
// Ink library. This is provided for convenience when testing.
virtual float GetCornerRoundingForTesting() const = 0;
virtual float GetOpacityForTesting() const = 0;
};
} // namespace chrome_pdf
#endif // PDF_INK_INK_BRUSH_FAMILY_H_