blob: 96d2a5e58139d2db115701c2f965132b566ca949 [file] [log] [blame]
Matt Sarettcf2c05c2016-10-26 11:03:23 -04001/*
2 * Copyright (C) 2016 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#include "IProfileRenderer.h"
18
Mike Reede7f688b2018-05-04 15:21:43 -040019#include "SkCanvas.h"
Matt Sarettcf2c05c2016-10-26 11:03:23 -040020
21namespace android {
22namespace uirenderer {
23
24class SkiaProfileRenderer : public IProfileRenderer {
25public:
John Reckc30836d2022-08-12 14:28:31 -040026 explicit SkiaProfileRenderer(SkCanvas* canvas, uint32_t width, uint32_t height)
27 : mCanvas(canvas), mWidth(width), mHeight(height) {}
Matt Sarettcf2c05c2016-10-26 11:03:23 -040028
29 void drawRect(float left, float top, float right, float bottom, const SkPaint& paint) override;
30 void drawRects(const float* rects, int count, const SkPaint& paint) override;
John Reckc30836d2022-08-12 14:28:31 -040031 uint32_t getViewportWidth() override { return mWidth; }
32 uint32_t getViewportHeight() override { return mHeight; }
Matt Sarettcf2c05c2016-10-26 11:03:23 -040033
34 virtual ~SkiaProfileRenderer() {}
35
36private:
37 // Does not have ownership.
38 SkCanvas* mCanvas;
John Reckc30836d2022-08-12 14:28:31 -040039 uint32_t mWidth;
40 uint32_t mHeight;
Matt Sarettcf2c05c2016-10-26 11:03:23 -040041};
42
43} /* namespace uirenderer */
44} /* namespace android */