forked from ShuriZma/suyu
1
0
Fork 0

hle: nvflinger: Move BufferTransformFlags to its own header.

This commit is contained in:
bunnei 2021-11-11 18:31:05 -08:00
parent 402273d91b
commit 05d80fba38
4 changed files with 29 additions and 18 deletions

View File

@ -537,6 +537,7 @@ add_library(core STATIC
hle/service/nvdrv/syncpoint_manager.h hle/service/nvdrv/syncpoint_manager.h
hle/service/nvflinger/buffer_queue.cpp hle/service/nvflinger/buffer_queue.cpp
hle/service/nvflinger/buffer_queue.h hle/service/nvflinger/buffer_queue.h
hle/service/nvflinger/buffer_transform_flags.h
hle/service/nvflinger/nvflinger.cpp hle/service/nvflinger/nvflinger.cpp
hle/service/nvflinger/nvflinger.h hle/service/nvflinger/nvflinger.h
hle/service/nvflinger/pixel_format.h hle/service/nvflinger/pixel_format.h

View File

@ -9,7 +9,7 @@
#include "common/common_types.h" #include "common/common_types.h"
#include "common/math_util.h" #include "common/math_util.h"
#include "core/hle/service/nvdrv/devices/nvdevice.h" #include "core/hle/service/nvdrv/devices/nvdevice.h"
#include "core/hle/service/nvflinger/buffer_queue.h" #include "core/hle/service/nvflinger/buffer_transform_flags.h"
#include "core/hle/service/nvflinger/pixel_format.h" #include "core/hle/service/nvflinger/pixel_format.h"
namespace Service::Nvidia::Devices { namespace Service::Nvidia::Devices {

View File

@ -0,0 +1,25 @@
// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright 2021 yuzu Emulator Project
#pragma once
#include "common/common_types.h"
namespace android {
enum class BufferTransformFlags : u32 {
/// No transform flags are set
Unset = 0x00,
/// Flip source image horizontally (around the vertical axis)
FlipH = 0x01,
/// Flip source image vertically (around the horizontal axis)
FlipV = 0x02,
/// Rotate source image 90 degrees clockwise
Rotate90 = 0x04,
/// Rotate source image 180 degrees
Rotate180 = 0x03,
/// Rotate source image 270 degrees clockwise
Rotate270 = 0x07,
};
} // namespace android

View File

@ -6,6 +6,7 @@
#include "common/common_types.h" #include "common/common_types.h"
#include "common/math_util.h" #include "common/math_util.h"
#include "core/hle/service/nvflinger/buffer_transform_flags.h"
#include "core/hle/service/nvflinger/pixel_format.h" #include "core/hle/service/nvflinger/pixel_format.h"
namespace Tegra { namespace Tegra {
@ -14,29 +15,13 @@ namespace Tegra {
* Struct describing framebuffer configuration * Struct describing framebuffer configuration
*/ */
struct FramebufferConfig { struct FramebufferConfig {
enum class TransformFlags : u32 {
/// No transform flags are set
Unset = 0x00,
/// Flip source image horizontally (around the vertical axis)
FlipH = 0x01,
/// Flip source image vertically (around the horizontal axis)
FlipV = 0x02,
/// Rotate source image 90 degrees clockwise
Rotate90 = 0x04,
/// Rotate source image 180 degrees
Rotate180 = 0x03,
/// Rotate source image 270 degrees clockwise
Rotate270 = 0x07,
};
VAddr address{}; VAddr address{};
u32 offset{}; u32 offset{};
u32 width{}; u32 width{};
u32 height{}; u32 height{};
u32 stride{}; u32 stride{};
TransformFlags transform_flags{};
android::PixelFormat pixel_format{}; android::PixelFormat pixel_format{};
android::BufferTransformFlags transform_flags{};
Common::Rectangle<int> crop_rect; Common::Rectangle<int> crop_rect;
}; };