8#ifndef ToolUtils_DEFINED
9#define ToolUtils_DEFINED
71 const SkPoint* positions =
nullptr);
101 HilbertGenerator(
float desiredSize,
float desiredLineWidth,
int desiredDepth);
107 void turn90(
bool turnLeft);
109 void recursiveDraw(
SkCanvas* canvas,
int curDepth,
bool turnLeft);
112 const float fDesiredSize;
113 const int fDesiredDepth;
114 const float fSegmentLength;
115 const float fDesiredLineWidth;
123 const float fExpectedLen;
136 std::unique_ptr<
char[]>* mem);
178 int id()
const {
return fID; }
196 for (
int i = 0; i < fDependencies.size(); ++i) {
197 if (!fDependencies[i]->fWasOutput) {
201 if (fOutputPos < fDependencies[i]->
outputPos()) {
216 node->fWasOutput =
true;
222 return node->fDependencies[index];
230 graph->reserve_exact(graph->size() + num);
232 for (
int i = 0; i < num; ++i) {
239 for (
int i = 0; i < graph.
size(); ++i) {
248 for (
size_t i = graph.
size() - 1; i > 0; --i) {
259 uint32_t fOutputPos = 0;
260 bool fTempMark =
false;
261 bool fWasOutput =
false;
344 std::vector<AxisSlider> fAxisSliders;
345 std::unique_ptr<SkFontArguments::VariationPosition::Coordinate[]> fCoords;
346 static constexpr size_t kAxisVarsSize = 3;
static int step(int x, SkScalar min, SkScalar max)
void SK_SPI SkDebugf(const char format[],...) SK_PRINTF_LIKE(1
void swap(sk_sp< T > &a, sk_sp< T > &b)
Type::kYUV Type::kRGBA() int(0.7 *637)
void * writable_addr() const
const void * addr() const
bool peekPixels(SkPixmap *pixmap)