/*
 * Copyright 2012 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */
#include "tests/PathOpsTestCommon.h"

extern const CubicPts pointDegenerates[];
extern const CubicPts notPointDegenerates[];
extern const CubicPts tests[][2];
extern CubicPts hexTests[][2];

extern const CubicPts lines[];
extern const CubicPts notLines[];
extern const CubicPts modEpsilonLines[];
extern const CubicPts lessEpsilonLines[];
extern const CubicPts negEpsilonLines[];

extern const size_t pointDegenerates_count;
extern const size_t notPointDegenerates_count;
extern const size_t tests_count;
extern const size_t hexTests_count;
extern const size_t lines_count;
extern const size_t notLines_count;
extern const size_t modEpsilonLines_count;
extern const size_t lessEpsilonLines_count;
extern const size_t negEpsilonLines_count;
