1021693b967a2c5556dddd183eb0247df4079e1adStan Iliev/*
2021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * Copyright (C) 2016 The Android Open Source Project
3021693b967a2c5556dddd183eb0247df4079e1adStan Iliev *
4021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * Licensed under the Apache License, Version 2.0 (the "License");
5021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * you may not use this file except in compliance with the License.
6021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * You may obtain a copy of the License at
7021693b967a2c5556dddd183eb0247df4079e1adStan Iliev *
8021693b967a2c5556dddd183eb0247df4079e1adStan Iliev *      http://www.apache.org/licenses/LICENSE-2.0
9021693b967a2c5556dddd183eb0247df4079e1adStan Iliev *
10021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * Unless required by applicable law or agreed to in writing, software
11021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * distributed under the License is distributed on an "AS IS" BASIS,
12021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * See the License for the specific language governing permissions and
14021693b967a2c5556dddd183eb0247df4079e1adStan Iliev * limitations under the License.
15021693b967a2c5556dddd183eb0247df4079e1adStan Iliev */
16021693b967a2c5556dddd183eb0247df4079e1adStan Iliev
17021693b967a2c5556dddd183eb0247df4079e1adStan Iliev#pragma once
18021693b967a2c5556dddd183eb0247df4079e1adStan Iliev
19500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev#include <SkSurface.h>
20500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev#include "Matrix.h"
21500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev
22021693b967a2c5556dddd183eb0247df4079e1adStan Ilievnamespace android {
23021693b967a2c5556dddd183eb0247df4079e1adStan Ilievnamespace uirenderer {
24021693b967a2c5556dddd183eb0247df4079e1adStan Ilievnamespace skiapipeline {
25021693b967a2c5556dddd183eb0247df4079e1adStan Iliev
26021693b967a2c5556dddd183eb0247df4079e1adStan Iliev/**
27500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev * An offscreen rendering target used to contain the contents a RenderNode.
28021693b967a2c5556dddd183eb0247df4079e1adStan Iliev */
29500a0c30d4dcd012218c3e44a62926a1c34a259fStan Ilievstruct SkiaLayer
30500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev{
31500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev    sk_sp<SkSurface> layerSurface;
32500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev    Matrix4 inverseTransformInWindow;
3379756be175dea78ee9d51bb22abba7621bd9b5ccMatt Sarett    bool hasRenderedSinceRepaint = false;
34021693b967a2c5556dddd183eb0247df4079e1adStan Iliev};
35021693b967a2c5556dddd183eb0247df4079e1adStan Iliev
36500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev
37500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev} /* namespace skiapipeline */
38500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev} /* namespace uirenderer */
39500a0c30d4dcd012218c3e44a62926a1c34a259fStan Iliev} /* namespace android */
40