godot/thirdparty/thorvg/src/renderer/tvgPaint.cpp

/*
 * Copyright (c) 2020 - 2024 the ThorVG project. All rights reserved.

 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:

 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.

 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

#include "tvgMath.h"
#include "tvgPaint.h"
#include "tvgShape.h"
#include "tvgPicture.h"
#include "tvgScene.h"
#include "tvgText.h"

/************************************************************************/
/* Internal Class Implementation                                        */
/************************************************************************/

#define PAINT_METHOD(ret, METHOD)


static Result _clipRect(RenderMethod* renderer, const Point* pts, const Matrix& pm, const Matrix& rm, RenderRegion& before)
{}


static Result _compFastTrack(RenderMethod* renderer, Paint* cmpTarget, const Matrix& pm, RenderRegion& before)
{}


RenderRegion Paint::Impl::bounds(RenderMethod* renderer) const
{}


Iterator* Paint::Impl::iterator()
{}


Paint* Paint::Impl::duplicate(Paint* ret)
{}


bool Paint::Impl::rotate(float degree)
{}


bool Paint::Impl::scale(float factor)
{}


bool Paint::Impl::translate(float x, float y)
{}


bool Paint::Impl::render(RenderMethod* renderer)
{}


RenderData Paint::Impl::update(RenderMethod* renderer, const Matrix& pm, Array<RenderData>& clips, uint8_t opacity, RenderUpdateFlag pFlag, bool clipper)
{}


bool Paint::Impl::bounds(float* x, float* y, float* w, float* h, bool transformed, bool stroking, bool origin)
{}


void Paint::Impl::reset()
{}


/************************************************************************/
/* External Class Implementation                                        */
/************************************************************************/

Paint :: Paint() :{}


Paint :: ~Paint()
{}


Result Paint::rotate(float degree) noexcept
{}


Result Paint::scale(float factor) noexcept
{}


Result Paint::translate(float x, float y) noexcept
{}


Result Paint::transform(const Matrix& m) noexcept
{}


Matrix Paint::transform() noexcept
{}


TVG_DEPRECATED Result Paint::bounds(float* x, float* y, float* w, float* h) const noexcept
{}


Result Paint::bounds(float* x, float* y, float* w, float* h, bool transformed) const noexcept
{}


Paint* Paint::duplicate() const noexcept
{}


Result Paint::composite(std::unique_ptr<Paint> target, CompositeMethod method) noexcept
{}


CompositeMethod Paint::composite(const Paint** target) const noexcept
{}


Result Paint::opacity(uint8_t o) noexcept
{}


uint8_t Paint::opacity() const noexcept
{}


uint32_t Paint::identifier() const noexcept
{}


Result Paint::blend(BlendMethod method) noexcept
{}


BlendMethod Paint::blend() const noexcept
{}