#ifndef THIRD_PARTY_BLINK_RENDERER_CORE_STYLE_BASIC_SHAPES_H_
#define THIRD_PARTY_BLINK_RENDERER_CORE_STYLE_BASIC_SHAPES_H_
#include "base/memory/scoped_refptr.h"
#include "third_party/blink/renderer/core/core_export.h"
#include "third_party/blink/renderer/platform/geometry/length.h"
#include "third_party/blink/renderer/platform/geometry/length_size.h"
#include "third_party/blink/renderer/platform/graphics/graphics_types.h"
#include "third_party/blink/renderer/platform/graphics/path.h"
#include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
#include "third_party/blink/renderer/platform/wtf/casting.h"
#include "third_party/blink/renderer/platform/wtf/ref_counted.h"
#include "third_party/blink/renderer/platform/wtf/vector.h"
namespace gfx {
class PointF;
class RectF;
class SizeF;
}
namespace blink {
class Path;
class CORE_EXPORT BasicShape : public RefCounted<BasicShape> { … };
class BasicShapeCenterCoordinate { … };
gfx::PointF PointForCenterCoordinate(const BasicShapeCenterCoordinate& center_x,
const BasicShapeCenterCoordinate& center_y,
gfx::SizeF box_size);
class BasicShapeRadius { … };
class BasicShapeWithCenterAndRadii : public BasicShape { … };
template <>
struct DowncastTraits<BasicShapeWithCenterAndRadii> { … };
class CORE_EXPORT BasicShapeCircle final : public BasicShapeWithCenterAndRadii { … };
template <>
struct DowncastTraits<BasicShapeCircle> { … };
class BasicShapeEllipse final : public BasicShapeWithCenterAndRadii { … };
template <>
struct DowncastTraits<BasicShapeEllipse> { … };
class BasicShapePolygon final : public BasicShape { … };
template <>
struct DowncastTraits<BasicShapePolygon> { … };
class BasicShapeInset final : public BasicShape { … };
template <>
struct DowncastTraits<BasicShapeInset> { … };
}
#endif