mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-15 15:16:12 -04:00
134 lines
4.8 KiB
C++
134 lines
4.8 KiB
C++
// WARNING: Please don't edit this file. It was generated by C++/WinRT
|
|
// v2.0.250303.1
|
|
|
|
#pragma once
|
|
#ifndef WINRT_Microsoft_Graphics_Imaging_0_H
|
|
#define WINRT_Microsoft_Graphics_Imaging_0_H
|
|
WINRT_EXPORT namespace winrt::Windows::Graphics::Imaging {
|
|
struct SoftwareBitmap;
|
|
}
|
|
WINRT_EXPORT namespace winrt::Windows::Storage::Streams { struct IBuffer; }
|
|
WINRT_EXPORT namespace winrt::Microsoft::Graphics::Imaging {
|
|
enum class ImageBufferPixelFormat : int32_t {
|
|
Rgb8 = 137224,
|
|
Rgba8 = 30,
|
|
Argb8 = 2498570,
|
|
Bgra8 = 87,
|
|
Gray8 = 62,
|
|
};
|
|
struct IImageBuffer;
|
|
struct IImageBufferStatics;
|
|
struct ImageBuffer;
|
|
struct ImageBufferContract;
|
|
}
|
|
namespace winrt::impl {
|
|
template <>
|
|
struct category<winrt::Microsoft::Graphics::Imaging::IImageBuffer> {
|
|
using type = interface_category;
|
|
};
|
|
template <>
|
|
struct category<winrt::Microsoft::Graphics::Imaging::IImageBufferStatics> {
|
|
using type = interface_category;
|
|
};
|
|
template <>
|
|
struct category<winrt::Microsoft::Graphics::Imaging::ImageBuffer> {
|
|
using type = class_category;
|
|
};
|
|
template <>
|
|
struct category<winrt::Microsoft::Graphics::Imaging::ImageBufferPixelFormat> {
|
|
using type = enum_category;
|
|
};
|
|
template <>
|
|
inline constexpr auto&
|
|
name_v<winrt::Microsoft::Graphics::Imaging::ImageBuffer> =
|
|
L"Microsoft.Graphics.Imaging.ImageBuffer";
|
|
template <>
|
|
inline constexpr auto&
|
|
name_v<winrt::Microsoft::Graphics::Imaging::ImageBufferPixelFormat> =
|
|
L"Microsoft.Graphics.Imaging.ImageBufferPixelFormat";
|
|
template <>
|
|
inline constexpr auto&
|
|
name_v<winrt::Microsoft::Graphics::Imaging::IImageBuffer> =
|
|
L"Microsoft.Graphics.Imaging.IImageBuffer";
|
|
template <>
|
|
inline constexpr auto&
|
|
name_v<winrt::Microsoft::Graphics::Imaging::IImageBufferStatics> =
|
|
L"Microsoft.Graphics.Imaging.IImageBufferStatics";
|
|
template <>
|
|
inline constexpr auto&
|
|
name_v<winrt::Microsoft::Graphics::Imaging::ImageBufferContract> =
|
|
L"Microsoft.Graphics.Imaging.ImageBufferContract";
|
|
template <>
|
|
inline constexpr guid guid_v<winrt::Microsoft::Graphics::Imaging::IImageBuffer>{
|
|
0x3BAABD0B,
|
|
0x1854,
|
|
0x51F1,
|
|
{0xBD, 0x2A, 0x74, 0xC8, 0x78, 0x58, 0xF4,
|
|
0x61}}; // 3BAABD0B-1854-51F1-BD2A-74C87858F461
|
|
template <>
|
|
inline constexpr guid
|
|
guid_v<winrt::Microsoft::Graphics::Imaging::IImageBufferStatics>{
|
|
0x35B17BD3,
|
|
0xF346,
|
|
0x529F,
|
|
{0x8C, 0x0F, 0x3B, 0xF9, 0x6C, 0x56, 0xEB,
|
|
0x13}}; // 35B17BD3-F346-529F-8C0F-3BF96C56EB13
|
|
template <>
|
|
struct default_interface<winrt::Microsoft::Graphics::Imaging::ImageBuffer> {
|
|
using type = winrt::Microsoft::Graphics::Imaging::IImageBuffer;
|
|
};
|
|
template <>
|
|
struct abi<winrt::Microsoft::Graphics::Imaging::IImageBuffer> {
|
|
struct WINRT_IMPL_NOVTABLE type : inspectable_abi {
|
|
virtual int32_t __stdcall get_Buffer(void**) noexcept = 0;
|
|
virtual int32_t __stdcall get_PixelFormat(int32_t*) noexcept = 0;
|
|
virtual int32_t __stdcall get_PixelHeight(int32_t*) noexcept = 0;
|
|
virtual int32_t __stdcall get_PixelWidth(int32_t*) noexcept = 0;
|
|
virtual int32_t __stdcall get_RowStride(int32_t*) noexcept = 0;
|
|
virtual int32_t __stdcall CopyToByteArray(uint32_t, uint8_t*) noexcept = 0;
|
|
virtual int32_t __stdcall CopyToSoftwareBitmap(void**) noexcept = 0;
|
|
};
|
|
};
|
|
template <>
|
|
struct abi<winrt::Microsoft::Graphics::Imaging::IImageBufferStatics> {
|
|
struct WINRT_IMPL_NOVTABLE type : inspectable_abi {
|
|
virtual int32_t __stdcall CreateForBuffer(void*, int32_t, int32_t, int32_t,
|
|
int32_t, void**) noexcept = 0;
|
|
virtual int32_t __stdcall CreateForSoftwareBitmap(void*,
|
|
void**) noexcept = 0;
|
|
};
|
|
};
|
|
template <typename D>
|
|
struct consume_Microsoft_Graphics_Imaging_IImageBuffer {
|
|
[[nodiscard]] auto Buffer() const;
|
|
[[nodiscard]] auto PixelFormat() const;
|
|
[[nodiscard]] auto PixelHeight() const;
|
|
[[nodiscard]] auto PixelWidth() const;
|
|
[[nodiscard]] auto RowStride() const;
|
|
auto CopyToByteArray(array_view<uint8_t> values) const;
|
|
auto CopyToSoftwareBitmap() const;
|
|
};
|
|
template <>
|
|
struct consume<winrt::Microsoft::Graphics::Imaging::IImageBuffer> {
|
|
template <typename D>
|
|
using type = consume_Microsoft_Graphics_Imaging_IImageBuffer<D>;
|
|
};
|
|
template <typename D>
|
|
struct consume_Microsoft_Graphics_Imaging_IImageBufferStatics {
|
|
auto CreateForBuffer(
|
|
winrt::Windows::Storage::Streams::IBuffer const& buffer,
|
|
winrt::Microsoft::Graphics::Imaging::ImageBufferPixelFormat const&
|
|
pixelFormat,
|
|
int32_t width, int32_t height, int32_t rowStride) const;
|
|
auto CreateForSoftwareBitmap(
|
|
winrt::Windows::Graphics::Imaging::SoftwareBitmap const& softwareBitmap)
|
|
const;
|
|
};
|
|
template <>
|
|
struct consume<winrt::Microsoft::Graphics::Imaging::IImageBufferStatics> {
|
|
template <typename D>
|
|
using type = consume_Microsoft_Graphics_Imaging_IImageBufferStatics<D>;
|
|
};
|
|
} // namespace winrt::impl
|
|
#endif
|