diff --git a/src/citra_qt/camera/camera_util.cpp b/src/citra_qt/camera/camera_util.cpp index a2f01e651..8e67ca452 100644 --- a/src/citra_qt/camera/camera_util.cpp +++ b/src/citra_qt/camera/camera_util.cpp @@ -3,11 +3,10 @@ // Refer to the license.txt file included. #include +#include #include #include #include "citra_qt/camera/camera_util.h" -#include "core/frontend/camera/factory.h" -#include "core/frontend/camera/interface.h" namespace CameraUtil { diff --git a/src/citra_qt/camera/qt_camera_base.cpp b/src/citra_qt/camera/qt_camera_base.cpp index 9eedad3db..6956bdee0 100644 --- a/src/citra_qt/camera/qt_camera_base.cpp +++ b/src/citra_qt/camera/qt_camera_base.cpp @@ -5,6 +5,8 @@ #include #include "citra_qt/camera/camera_util.h" #include "citra_qt/camera/qt_camera_base.h" +#include "common/logging/log.h" +#include "core/hle/service/cam/cam.h" namespace Camera { diff --git a/src/citra_qt/camera/still_image_camera.cpp b/src/citra_qt/camera/still_image_camera.cpp index 665100f8d..cd1b6713d 100644 --- a/src/citra_qt/camera/still_image_camera.cpp +++ b/src/citra_qt/camera/still_image_camera.cpp @@ -7,6 +7,7 @@ #include #include #include "citra_qt/camera/still_image_camera.h" +#include "common/logging/log.h" namespace Camera { diff --git a/src/citra_qt/configuration/configure_camera.cpp b/src/citra_qt/configuration/configure_camera.cpp index 7ecb3c9cb..1ee577988 100644 --- a/src/citra_qt/configuration/configure_camera.cpp +++ b/src/citra_qt/configuration/configure_camera.cpp @@ -2,7 +2,6 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. -#include #include #include #include @@ -12,6 +11,9 @@ #include "citra_qt/configuration/configure_camera.h" #include "citra_qt/uisettings.h" #include "core/core.h" +#include "core/frontend/camera/factory.h" +#include "core/frontend/camera/interface.h" +#include "core/hle/service/cam/cam.h" #include "core/settings.h" #include "ui_configure_camera.h" diff --git a/src/citra_qt/configuration/configure_camera.h b/src/citra_qt/configuration/configure_camera.h index 739297a8d..5e9b5001a 100644 --- a/src/citra_qt/configuration/configure_camera.h +++ b/src/citra_qt/configuration/configure_camera.h @@ -4,8 +4,13 @@ #pragma once -#include "core/frontend/camera/factory.h" -#include "core/frontend/camera/interface.h" +#include +#include +#include + +namespace Camera { +class CameraInterface; +} namespace Ui { class ConfigureCamera; diff --git a/src/citra_qt/configuration/configure_motion_touch.cpp b/src/citra_qt/configuration/configure_motion_touch.cpp index dab581388..7573e2217 100644 --- a/src/citra_qt/configuration/configure_motion_touch.cpp +++ b/src/citra_qt/configuration/configure_motion_touch.cpp @@ -10,6 +10,7 @@ #include #include "citra_qt/configuration/configure_motion_touch.h" #include "citra_qt/configuration/configure_touch_from_button.h" +#include "common/logging/log.h" #include "input_common/main.h" #include "ui_configure_motion_touch.h" diff --git a/src/citra_qt/debugger/profiler.cpp b/src/citra_qt/debugger/profiler.cpp index 195f6f82e..e005d01a2 100644 --- a/src/citra_qt/debugger/profiler.cpp +++ b/src/citra_qt/debugger/profiler.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include "citra_qt/debugger/profiler.h" #include "citra_qt/util/util.h" #include "common/common_types.h" diff --git a/src/citra_qt/debugger/profiler.h b/src/citra_qt/debugger/profiler.h index eae1e9e3c..e2a542767 100644 --- a/src/citra_qt/debugger/profiler.h +++ b/src/citra_qt/debugger/profiler.h @@ -4,9 +4,7 @@ #pragma once -#include -#include -#include +#include #include "common/microprofile.h" class MicroProfileDialog : public QWidget { diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp index 7820f427a..c03575430 100644 --- a/src/citra_qt/main.cpp +++ b/src/citra_qt/main.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/src/citra_qt/main.h b/src/citra_qt/main.h index 234b9893a..9a0bef322 100644 --- a/src/citra_qt/main.h +++ b/src/citra_qt/main.h @@ -6,7 +6,6 @@ #include #include -#include #include #include #include @@ -40,6 +39,7 @@ class MultiplayerState; class ProfilerWidget; template class QFutureWatcher; +class QLabel; class QProgressBar; class RegistersWidget; class Updater; diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 01f18e445..133a33ef2 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -234,6 +234,7 @@ add_library(core STATIC hle/service/cam/cam.h hle/service/cam/cam_c.cpp hle/service/cam/cam_c.h + hle/service/cam/cam_params.h hle/service/cam/cam_q.cpp hle/service/cam/cam_q.h hle/service/cam/cam_s.cpp diff --git a/src/core/announce_multiplayer_session.cpp b/src/core/announce_multiplayer_session.cpp index d46c8db56..38acb4bac 100644 --- a/src/core/announce_multiplayer_session.cpp +++ b/src/core/announce_multiplayer_session.cpp @@ -3,6 +3,7 @@ // Refer to the license.txt file included. #include +#include #include #include "announce_multiplayer_session.h" #include "common/announce_multiplayer_room.h" diff --git a/src/core/frontend/camera/blank_camera.cpp b/src/core/frontend/camera/blank_camera.cpp index a63ba780a..b2acb598b 100644 --- a/src/core/frontend/camera/blank_camera.cpp +++ b/src/core/frontend/camera/blank_camera.cpp @@ -3,6 +3,7 @@ // Refer to the license.txt file included. #include "core/frontend/camera/blank_camera.h" +#include "core/hle/service/cam/cam.h" namespace Camera { diff --git a/src/core/frontend/camera/interface.h b/src/core/frontend/camera/interface.h index 6d8040ae2..fa2c18ce1 100644 --- a/src/core/frontend/camera/interface.h +++ b/src/core/frontend/camera/interface.h @@ -6,7 +6,11 @@ #include #include "common/common_types.h" -#include "core/hle/service/cam/cam.h" +#include "core/hle/service/cam/cam_params.h" + +namespace Service::CAM { +struct Resolution; +} // namespace Service::CAM namespace Camera { diff --git a/src/core/hle/service/cam/cam.h b/src/core/hle/service/cam/cam.h index 7c36e02c5..4a43afd30 100644 --- a/src/core/hle/service/cam/cam.h +++ b/src/core/hle/service/cam/cam.h @@ -18,6 +18,7 @@ #include "common/swap.h" #include "core/global.h" #include "core/hle/result.h" +#include "core/hle/service/cam/cam_params.h" #include "core/hle/service/service.h" namespace Core { @@ -38,120 +39,6 @@ class Process; namespace Service::CAM { -enum CameraIndex { - OuterRightCamera = 0, - InnerCamera = 1, - OuterLeftCamera = 2, - - NumCameras = 3, -}; - -enum class Effect : u8 { - None = 0, - Mono = 1, - Sepia = 2, - Negative = 3, - Negafilm = 4, - Sepia01 = 5, -}; - -enum class Flip : u8 { - None = 0, - Horizontal = 1, - Vertical = 2, - Reverse = 3, -}; - -enum class Size : u8 { - VGA = 0, - QVGA = 1, - QQVGA = 2, - CIF = 3, - QCIF = 4, - DS_LCD = 5, - DS_LCDx4 = 6, - CTR_TOP_LCD = 7, - CTR_BOTTOM_LCD = QVGA, -}; - -enum class FrameRate : u8 { - Rate_15 = 0, - Rate_15_To_5 = 1, - Rate_15_To_2 = 2, - Rate_10 = 3, - Rate_8_5 = 4, - Rate_5 = 5, - Rate_20 = 6, - Rate_20_To_5 = 7, - Rate_30 = 8, - Rate_30_To_5 = 9, - Rate_15_To_10 = 10, - Rate_20_To_10 = 11, - Rate_30_To_10 = 12, -}; - -enum class ShutterSoundType : u8 { - Normal = 0, - Movie = 1, - MovieEnd = 2, -}; - -enum class WhiteBalance : u8 { - BalanceAuto = 0, - Balance3200K = 1, - Balance4150K = 2, - Balance5200K = 3, - Balance6000K = 4, - Balance7000K = 5, - BalanceMax = 6, - BalanceNormal = BalanceAuto, - BalanceTungsten = Balance3200K, - BalanceWhiteFluorescentLight = Balance4150K, - BalanceDaylight = Balance5200K, - BalanceCloudy = Balance6000K, - BalanceHorizon = Balance6000K, - BalanceShade = Balance7000K, -}; - -enum class PhotoMode : u8 { - Normal = 0, - Portrait = 1, - Landscape = 2, - Nightview = 3, - Letter0 = 4, -}; - -enum class LensCorrection : u8 { - Off = 0, - On70 = 1, - On90 = 2, - Dark = Off, - Normal = On70, - Bright = On90, -}; - -enum class Contrast : u8 { - Pattern01 = 1, - Pattern02 = 2, - Pattern03 = 3, - Pattern04 = 4, - Pattern05 = 5, - Pattern06 = 6, - Pattern07 = 7, - Pattern08 = 8, - Pattern09 = 9, - Pattern10 = 10, - Pattern11 = 11, - Low = Pattern05, - Normal = Pattern06, - High = Pattern07, -}; - -enum class OutputFormat : u8 { - YUV422 = 0, - RGB565 = 1, -}; - /// Stereo camera calibration data. struct StereoCameraCalibrationData { u8 isValidRotationXY; ///< Bool indicating whether the X and Y rotation data is valid. diff --git a/src/core/hle/service/cam/cam_params.h b/src/core/hle/service/cam/cam_params.h new file mode 100644 index 000000000..5cb1e7c6c --- /dev/null +++ b/src/core/hle/service/cam/cam_params.h @@ -0,0 +1,125 @@ +// Copyright 2020 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include "common/common_types.h" + +namespace Service::CAM { + +enum CameraIndex { + OuterRightCamera = 0, + InnerCamera = 1, + OuterLeftCamera = 2, + + NumCameras = 3, +}; + +enum class Effect : u8 { + None = 0, + Mono = 1, + Sepia = 2, + Negative = 3, + Negafilm = 4, + Sepia01 = 5, +}; + +enum class Flip : u8 { + None = 0, + Horizontal = 1, + Vertical = 2, + Reverse = 3, +}; + +enum class Size : u8 { + VGA = 0, + QVGA = 1, + QQVGA = 2, + CIF = 3, + QCIF = 4, + DS_LCD = 5, + DS_LCDx4 = 6, + CTR_TOP_LCD = 7, + CTR_BOTTOM_LCD = QVGA, +}; + +enum class FrameRate : u8 { + Rate_15 = 0, + Rate_15_To_5 = 1, + Rate_15_To_2 = 2, + Rate_10 = 3, + Rate_8_5 = 4, + Rate_5 = 5, + Rate_20 = 6, + Rate_20_To_5 = 7, + Rate_30 = 8, + Rate_30_To_5 = 9, + Rate_15_To_10 = 10, + Rate_20_To_10 = 11, + Rate_30_To_10 = 12, +}; + +enum class ShutterSoundType : u8 { + Normal = 0, + Movie = 1, + MovieEnd = 2, +}; + +enum class WhiteBalance : u8 { + BalanceAuto = 0, + Balance3200K = 1, + Balance4150K = 2, + Balance5200K = 3, + Balance6000K = 4, + Balance7000K = 5, + BalanceMax = 6, + BalanceNormal = BalanceAuto, + BalanceTungsten = Balance3200K, + BalanceWhiteFluorescentLight = Balance4150K, + BalanceDaylight = Balance5200K, + BalanceCloudy = Balance6000K, + BalanceHorizon = Balance6000K, + BalanceShade = Balance7000K, +}; + +enum class PhotoMode : u8 { + Normal = 0, + Portrait = 1, + Landscape = 2, + Nightview = 3, + Letter0 = 4, +}; + +enum class LensCorrection : u8 { + Off = 0, + On70 = 1, + On90 = 2, + Dark = Off, + Normal = On70, + Bright = On90, +}; + +enum class Contrast : u8 { + Pattern01 = 1, + Pattern02 = 2, + Pattern03 = 3, + Pattern04 = 4, + Pattern05 = 5, + Pattern06 = 6, + Pattern07 = 7, + Pattern08 = 8, + Pattern09 = 9, + Pattern10 = 10, + Pattern11 = 11, + Low = Pattern05, + Normal = Pattern06, + High = Pattern07, +}; + +enum class OutputFormat : u8 { + YUV422 = 0, + RGB565 = 1, +}; + +} // namespace Service::CAM diff --git a/src/core/settings.cpp b/src/core/settings.cpp index ab01aecda..82b0b1181 100644 --- a/src/core/settings.cpp +++ b/src/core/settings.cpp @@ -8,6 +8,7 @@ #include "core/core.h" #include "core/gdbstub/gdbstub.h" #include "core/hle/kernel/shared_page.h" +#include "core/hle/service/cam/cam.h" #include "core/hle/service/hid/hid.h" #include "core/hle/service/ir/ir_rst.h" #include "core/hle/service/ir/ir_user.h" diff --git a/src/core/settings.h b/src/core/settings.h index 5749df0a5..324e2c1bd 100644 --- a/src/core/settings.h +++ b/src/core/settings.h @@ -10,7 +10,7 @@ #include #include #include "common/common_types.h" -#include "core/hle/service/cam/cam.h" +#include "core/hle/service/cam/cam_params.h" namespace Settings { diff --git a/src/video_core/pica_state.h b/src/video_core/pica_state.h index 95f449676..0cb78ea8e 100644 --- a/src/video_core/pica_state.h +++ b/src/video_core/pica_state.h @@ -10,6 +10,7 @@ #include "common/bit_field.h" #include "common/common_types.h" #include "common/vector_math.h" +#include "core/memory.h" #include "video_core/geometry_pipeline.h" #include "video_core/primitive_assembly.h" #include "video_core/regs.h"