Files
2026-01-27 23:46:02 -08:00

328 lines
13 KiB
C++

// WARNING: Please don't edit this file. It was generated by C++/WinRT
// v2.0.250303.1
#pragma once
#ifndef WINRT_Microsoft_Windows_Media_Capture_0_H
#define WINRT_Microsoft_Windows_Media_Capture_0_H
WINRT_EXPORT namespace winrt::Microsoft::UI { struct WindowId; }
WINRT_EXPORT namespace winrt::Windows::Foundation { struct Size; }
WINRT_EXPORT namespace winrt::Microsoft::Windows::Media::Capture {
enum class CameraCaptureUIMaxPhotoResolution : int32_t {
HighestAvailable = 0,
VerySmallQvga = 1,
SmallVga = 2,
MediumXga = 3,
Large3M = 4,
VeryLarge5M = 5,
};
enum class CameraCaptureUIMaxVideoResolution : int32_t {
HighestAvailable = 0,
LowDefinition = 1,
StandardDefinition = 2,
HighDefinition = 3,
};
enum class CameraCaptureUIMode : int32_t {
PhotoOrVideo = 0,
Photo = 1,
Video = 2,
};
enum class CameraCaptureUIPhotoFormat : int32_t {
Jpeg = 0,
Png = 1,
JpegXR = 2,
};
enum class CameraCaptureUIVideoFormat : int32_t {
Mp4 = 0,
Wmv = 1,
};
struct ICameraCaptureUI;
struct ICameraCaptureUIFactory;
struct ICameraCaptureUIPhotoCaptureSettings;
struct ICameraCaptureUIVideoCaptureSettings;
struct CameraCaptureUI;
struct CameraCaptureUIPhotoCaptureSettings;
struct CameraCaptureUIVideoCaptureSettings;
struct CameraCaptureUIContract;
}
namespace winrt::impl {
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUI> {
using type = interface_category;
};
template <>
struct category<
winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUIFactory> {
using type = interface_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIPhotoCaptureSettings> {
using type = interface_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIVideoCaptureSettings> {
using type = interface_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::CameraCaptureUI> {
using type = class_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIPhotoCaptureSettings> {
using type = class_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIVideoCaptureSettings> {
using type = class_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIMaxPhotoResolution> {
using type = enum_category;
};
template <>
struct category<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIMaxVideoResolution> {
using type = enum_category;
};
template <>
struct category<
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIMode> {
using type = enum_category;
};
template <>
struct category<
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIPhotoFormat> {
using type = enum_category;
};
template <>
struct category<
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIVideoFormat> {
using type = enum_category;
};
template <>
inline constexpr auto&
name_v<winrt::Microsoft::Windows::Media::Capture::CameraCaptureUI> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUI";
template <>
inline constexpr auto& name_v<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIPhotoCaptureSettings> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings";
template <>
inline constexpr auto& name_v<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIVideoCaptureSettings> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings";
template <>
inline constexpr auto& name_v<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIMaxPhotoResolution> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIMaxPhotoResolution";
template <>
inline constexpr auto& name_v<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIMaxVideoResolution> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIMaxVideoResolution";
template <>
inline constexpr auto&
name_v<winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIMode> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIMode";
template <>
inline constexpr auto& name_v<
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIPhotoFormat> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIPhotoFormat";
template <>
inline constexpr auto& name_v<
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIVideoFormat> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIVideoFormat";
template <>
inline constexpr auto&
name_v<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUI> =
L"Microsoft.Windows.Media.Capture.ICameraCaptureUI";
template <>
inline constexpr auto&
name_v<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUIFactory> =
L"Microsoft.Windows.Media.Capture.ICameraCaptureUIFactory";
template <>
inline constexpr auto& name_v<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIPhotoCaptureSettings> =
L"Microsoft.Windows.Media.Capture.ICameraCaptureUIPhotoCaptureSettings";
template <>
inline constexpr auto& name_v<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIVideoCaptureSettings> =
L"Microsoft.Windows.Media.Capture.ICameraCaptureUIVideoCaptureSettings";
template <>
inline constexpr auto&
name_v<winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIContract> =
L"Microsoft.Windows.Media.Capture.CameraCaptureUIContract";
template <>
inline constexpr guid
guid_v<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUI>{
0xC001D024,
0xC617,
0x5742,
{0x9A, 0xE1, 0x8F, 0xD3, 0x1B, 0xE0, 0x7F,
0x6C}}; // C001D024-C617-5742-9AE1-8FD31BE07F6C
template <>
inline constexpr guid
guid_v<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUIFactory>{
0x2B49623D,
0x5F22,
0x5FEE,
{0x99, 0x1F, 0x14, 0xF2, 0x45, 0x92, 0xA3,
0xC2}}; // 2B49623D-5F22-5FEE-991F-14F24592A3C2
template <>
inline constexpr guid guid_v<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIPhotoCaptureSettings>{
0x19FE2155,
0xD018,
0x53FC,
{0xBB, 0xDC, 0x57, 0x81, 0xA9, 0x46, 0x87,
0xA0}}; // 19FE2155-D018-53FC-BBDC-5781A94687A0
template <>
inline constexpr guid guid_v<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIVideoCaptureSettings>{
0x47DD74F6,
0x83B7,
0x5123,
{0xBB, 0xDF, 0xD7, 0x57, 0x20, 0x1D, 0x1E,
0xE8}}; // 47DD74F6-83B7-5123-BBDF-D757201D1EE8
template <>
struct default_interface<
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUI> {
using type = winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUI;
};
template <>
struct default_interface<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIPhotoCaptureSettings> {
using type = winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIPhotoCaptureSettings;
};
template <>
struct default_interface<winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIVideoCaptureSettings> {
using type = winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIVideoCaptureSettings;
};
template <>
struct abi<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUI> {
struct WINRT_IMPL_NOVTABLE type : inspectable_abi {
virtual int32_t __stdcall get_PhotoSettings(void**) noexcept = 0;
virtual int32_t __stdcall get_VideoSettings(void**) noexcept = 0;
virtual int32_t __stdcall CaptureFileAsync(int32_t, void**) noexcept = 0;
};
};
template <>
struct abi<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUIFactory> {
struct WINRT_IMPL_NOVTABLE type : inspectable_abi {
virtual int32_t __stdcall CreateInstance(
struct struct_Microsoft_UI_WindowId, void**) noexcept = 0;
};
};
template <>
struct abi<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIPhotoCaptureSettings> {
struct WINRT_IMPL_NOVTABLE type : inspectable_abi {
virtual int32_t __stdcall get_AllowCropping(bool*) noexcept = 0;
virtual int32_t __stdcall put_AllowCropping(bool) noexcept = 0;
virtual int32_t __stdcall get_CroppedAspectRatio(
winrt::Windows::Foundation::Size*) noexcept = 0;
virtual int32_t __stdcall put_CroppedAspectRatio(
winrt::Windows::Foundation::Size) noexcept = 0;
virtual int32_t __stdcall get_CroppedSizeInPixels(
winrt::Windows::Foundation::Size*) noexcept = 0;
virtual int32_t __stdcall put_CroppedSizeInPixels(
winrt::Windows::Foundation::Size) noexcept = 0;
virtual int32_t __stdcall get_Format(int32_t*) noexcept = 0;
virtual int32_t __stdcall put_Format(int32_t) noexcept = 0;
virtual int32_t __stdcall get_MaxResolution(int32_t*) noexcept = 0;
virtual int32_t __stdcall put_MaxResolution(int32_t) noexcept = 0;
};
};
template <>
struct abi<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIVideoCaptureSettings> {
struct WINRT_IMPL_NOVTABLE type : inspectable_abi {
virtual int32_t __stdcall get_AllowTrimming(bool*) noexcept = 0;
virtual int32_t __stdcall put_AllowTrimming(bool) noexcept = 0;
virtual int32_t __stdcall get_Format(int32_t*) noexcept = 0;
virtual int32_t __stdcall put_Format(int32_t) noexcept = 0;
virtual int32_t __stdcall get_MaxDurationInSeconds(float*) noexcept = 0;
virtual int32_t __stdcall put_MaxDurationInSeconds(float) noexcept = 0;
virtual int32_t __stdcall get_MaxResolution(int32_t*) noexcept = 0;
virtual int32_t __stdcall put_MaxResolution(int32_t) noexcept = 0;
};
};
template <typename D>
struct consume_Microsoft_Windows_Media_Capture_ICameraCaptureUI {
[[nodiscard]] auto PhotoSettings() const;
[[nodiscard]] auto VideoSettings() const;
auto CaptureFileAsync(
winrt::Microsoft::Windows::Media::Capture::CameraCaptureUIMode const&
mode) const;
};
template <>
struct consume<winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUI> {
template <typename D>
using type = consume_Microsoft_Windows_Media_Capture_ICameraCaptureUI<D>;
};
template <typename D>
struct consume_Microsoft_Windows_Media_Capture_ICameraCaptureUIFactory {
auto CreateInstance(winrt::Microsoft::UI::WindowId const& windowId) const;
};
template <>
struct consume<
winrt::Microsoft::Windows::Media::Capture::ICameraCaptureUIFactory> {
template <typename D>
using type =
consume_Microsoft_Windows_Media_Capture_ICameraCaptureUIFactory<D>;
};
template <typename D>
struct
consume_Microsoft_Windows_Media_Capture_ICameraCaptureUIPhotoCaptureSettings {
[[nodiscard]] auto AllowCropping() const;
auto AllowCropping(bool value) const;
[[nodiscard]] auto CroppedAspectRatio() const;
auto CroppedAspectRatio(winrt::Windows::Foundation::Size const& value) const;
[[nodiscard]] auto CroppedSizeInPixels() const;
auto CroppedSizeInPixels(winrt::Windows::Foundation::Size const& value) const;
[[nodiscard]] auto Format() const;
auto Format(winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIPhotoFormat const& value) const;
[[nodiscard]] auto MaxResolution() const;
auto MaxResolution(winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIMaxPhotoResolution const& value) const;
};
template <>
struct consume<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIPhotoCaptureSettings> {
template <typename D>
using type =
consume_Microsoft_Windows_Media_Capture_ICameraCaptureUIPhotoCaptureSettings<
D>;
};
template <typename D>
struct
consume_Microsoft_Windows_Media_Capture_ICameraCaptureUIVideoCaptureSettings {
[[nodiscard]] auto AllowTrimming() const;
auto AllowTrimming(bool value) const;
[[nodiscard]] auto Format() const;
auto Format(winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIVideoFormat const& value) const;
[[nodiscard]] auto MaxDurationInSeconds() const;
auto MaxDurationInSeconds(float value) const;
[[nodiscard]] auto MaxResolution() const;
auto MaxResolution(winrt::Microsoft::Windows::Media::Capture::
CameraCaptureUIMaxVideoResolution const& value) const;
};
template <>
struct consume<winrt::Microsoft::Windows::Media::Capture::
ICameraCaptureUIVideoCaptureSettings> {
template <typename D>
using type =
consume_Microsoft_Windows_Media_Capture_ICameraCaptureUIVideoCaptureSettings<
D>;
};
} // namespace winrt::impl
#endif