Flutter Impeller
tessellator.h
Go to the documentation of this file.
1
// Copyright 2013 The Flutter Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#ifndef FLUTTER_IMPELLER_TESSELLATOR_C_TESSELLATOR_H_
6
#define FLUTTER_IMPELLER_TESSELLATOR_C_TESSELLATOR_H_
7
8
#include <cstdint>
9
10
#include "
impeller/geometry/path_builder.h
"
11
12
#ifdef _WIN32
13
#define IMPELLER_API __declspec(dllexport)
14
#else
15
#define IMPELLER_API __attribute__((visibility("default")))
16
#endif
17
18
extern
"C"
{
19
20
namespace
impeller
{
21
22
struct
IMPELLER_API
Vertices
{
23
float
*
points
;
24
uint32_t
length
;
25
};
26
27
IMPELLER_API
PathBuilder
*
CreatePathBuilder
();
28
29
IMPELLER_API
void
DestroyPathBuilder
(
PathBuilder
* builder);
30
31
IMPELLER_API
void
MoveTo
(
PathBuilder
* builder,
Scalar
x,
Scalar
y);
32
33
IMPELLER_API
void
LineTo
(
PathBuilder
* builder,
Scalar
x,
Scalar
y);
34
35
IMPELLER_API
void
CubicTo
(
PathBuilder
* builder,
36
Scalar
x1,
37
Scalar
y1,
38
Scalar
x2,
39
Scalar
y2,
40
Scalar
x3,
41
Scalar
y3);
42
43
IMPELLER_API
void
Close
(
PathBuilder
* builder);
44
45
IMPELLER_API
struct
Vertices
*
Tessellate
(
PathBuilder
* builder,
46
int
fill_type,
47
Scalar
tolerance);
48
49
IMPELLER_API
void
DestroyVertices
(
Vertices
* vertices);
50
51
}
// namespace impeller
52
}
53
54
#endif // FLUTTER_IMPELLER_TESSELLATOR_C_TESSELLATOR_H_
impeller::Scalar
float Scalar
Definition:
scalar.h:18
impeller::DestroyVertices
void DestroyVertices(Vertices *vertices)
Definition:
tessellator.cc:76
impeller::PathBuilder
Definition:
path_builder.h:14
path_builder.h
impeller::MoveTo
void MoveTo(PathBuilder *builder, Scalar x, Scalar y)
Definition:
tessellator.cc:20
impeller::Vertices
Definition:
tessellator.h:22
impeller::Vertices::points
float * points
Definition:
tessellator.h:23
impeller::Vertices::length
uint32_t length
Definition:
tessellator.h:24
impeller::CreatePathBuilder
PathBuilder * CreatePathBuilder()
Definition:
tessellator.cc:12
impeller::CubicTo
void CubicTo(PathBuilder *builder, Scalar x1, Scalar y1, Scalar x2, Scalar y2, Scalar x3, Scalar y3)
Definition:
tessellator.cc:28
impeller::Close
void Close(PathBuilder *builder)
Definition:
tessellator.cc:38
impeller::LineTo
void LineTo(PathBuilder *builder, Scalar x, Scalar y)
Definition:
tessellator.cc:24
IMPELLER_API
#define IMPELLER_API
Definition:
tessellator.h:15
impeller::DestroyPathBuilder
void DestroyPathBuilder(PathBuilder *builder)
Definition:
tessellator.cc:16
impeller::Tessellate
struct Vertices * Tessellate(PathBuilder *builder, int fill_type, Scalar tolerance)
Definition:
tessellator.cc:42
impeller
Definition:
allocation.cc:12
impeller
tessellator
c
tessellator.h
Generated by
1.8.17