xref: /aosp_15_r20/external/deqp/framework/common/tcuSurfaceAccess.cpp (revision 35238bce31c2a825756842865a792f8cf7f89930)
1 /*-------------------------------------------------------------------------
2  * drawElements Quality Program Tester Core
3  * ----------------------------------------
4  *
5  * Copyright 2014 The Android Open Source Project
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  *//*!
20  * \file
21  * \brief Surface access class.
22  *//*--------------------------------------------------------------------*/
23 
24 #include "tcuSurfaceAccess.hpp"
25 
26 using namespace tcu;
27 
SurfaceAccess(tcu::Surface & surface,const tcu::PixelFormat & colorFmt,int x,int y,int width,int height)28 SurfaceAccess::SurfaceAccess(tcu::Surface &surface, const tcu::PixelFormat &colorFmt, int x, int y, int width,
29                              int height)
30     : m_surface(&surface)
31     , m_colorMask(getColorMask(colorFmt))
32     , m_x(x)
33     , m_y(y)
34     , m_width(width)
35     , m_height(height)
36 {
37 }
38 
SurfaceAccess(tcu::Surface & surface,const tcu::PixelFormat & colorFmt)39 SurfaceAccess::SurfaceAccess(tcu::Surface &surface, const tcu::PixelFormat &colorFmt)
40     : m_surface(&surface)
41     , m_colorMask(getColorMask(colorFmt))
42     , m_x(0)
43     , m_y(0)
44     , m_width(surface.getWidth())
45     , m_height(surface.getHeight())
46 {
47 }
48 
SurfaceAccess(const SurfaceAccess & parent,int x,int y,int width,int height)49 SurfaceAccess::SurfaceAccess(const SurfaceAccess &parent, int x, int y, int width, int height)
50     : m_surface(parent.m_surface)
51     , m_colorMask(parent.m_colorMask)
52     , m_x(parent.m_x + x)
53     , m_y(parent.m_y + y)
54     , m_width(width)
55     , m_height(height)
56 {
57 }
58