diff --git a/gfx/common/dxgi_common.h b/gfx/common/dxgi_common.h index 703bc7053e..e8a7b919df 100644 --- a/gfx/common/dxgi_common.h +++ b/gfx/common/dxgi_common.h @@ -4,19 +4,210 @@ #ifdef __MINGW32__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 +/* Pointer parameters */ #define _In_ -#define _In_opt_ -#define _Null_ - -#define _Out_writes_bytes_opt_(s) -#define _Out_writes_bytes_(s) +#define _Out_ +#define _Inout_ +#define _In_z_ +#define _Inout_z_ +#define _In_reads_(s) #define _In_reads_bytes_(s) -#define _Inout_opt_bytecount_(s) +#define _In_reads_z_(s) +#define _In_reads_or_z_(s) +#define _Out_writes_(s) +#define _Out_writes_bytes_(s) +#define _Out_writes_z_(s) +#define _Inout_updates_(s) +#define _Inout_updates_bytes_(s) +#define _Inout_updates_z_(s) +#define _Out_writes_to_(s,c) +#define _Out_writes_bytes_to_(s, c) +#define _Out_writes_all_(s) +#define _Out_writes_bytes_all_(s) +#define _Inout_updates_to_(s, c) +#define _Inout_updates_bytes_to_(s, c) +#define _Inout_updates_all_(s) +#define _Inout_updates_bytes_all_(s) +#define _In_reads_to_ptr_(p) +#define _In_reads_to_ptr_z_(p) +#define _Out_writes_to_ptr_(p) +#define _Out_writes_to_ptr_z(p) + +/* Optional pointer parameters */ +#define __in_opt +#define __out_opt +#define __inout_opt +#define _In_opt_ +#define _Out_opt_ +#define _Inout_opt_ +#define _In_opt_z_ +#define _Inout_opt_z_ +#define _In_reads_opt_(s) +#define _In_reads_bytes_opt_(s) +#define _In_reads_opt_z_(s) + +#define _Out_writes_opt_(s) +#define _Out_writes_opt_z_(s) +#define _Inout_updates_opt_(s) +#define _Inout_updates_bytes_opt_(s) +#define _Inout_updates_opt_z_(s) +#define _Out_writes_to_opt_(s, c) +#define _Out_writes_bytes_to_opt_(s, c) +#define _Out_writes_all_opt_(s) +#define _Out_writes_bytes_all_opt_(s) + +#define _Inout_updates_to_opt_(s, c) +#define _Inout_updates_bytes_to_opt_(s, c) +#define _Inout_updates_all_opt_(s) +#define _Inout_updates_bytes_all_opt_(s) +#define _In_reads_to_ptr_opt_(p) +#define _In_reads_to_ptr_opt_z_(p) +#define _Out_writes_to_ptr_opt_(p) +#define _Out_writes_to_ptr_opt_z_(p) + +/* Output pointer parameters */ +#define _Outptr_ +#define _Outptr_opt_ +#define _Outptr_result_maybenull_ +#define _Outptr_opt_result_maybenull_ +#define _Outptr_result_z_ +#define _Outptr_opt_result_z_ +#define _Outptr_result_maybenull_z_ +#define _Outptr_opt_result_maybenull_z_ +#define _COM_Outptr_ +#define _COM_Outptr_opt_ +#define _COM_Outptr_result_maybenull_ +#define _COM_Outptr_opt_result_maybenull_ +#define _Outptr_result_buffer_(s) +#define _Outptr_result_bytebuffer_(s) +#define _Outptr_opt_result_buffer_(s) +#define _Outptr_opt_result_bytebuffer_(s) +#define _Outptr_result_buffer_to_(s, c) +#define _Outptr_result_bytebuffer_to_(s, c) +#define _Outptr_result_bytebuffer_maybenull_(s) +#define _Outptr_opt_result_buffer_to_(s, c) +#define _Outptr_opt_result_bytebuffer_to_(s, c) +#define _Result_nullonfailure_ +#define _Result_zeroonfailure_ +#define _Outptr_result_nullonfailure_ +#define _Outptr_opt_result_nullonfailure_ +#define _Outref_result_nullonfailure_ + +/* Output reference parameters */ +#define _Outref_ +#define _Outref_result_maybenull_ +#define _Outref_result_buffer_(s) +#define _Outref_result_bytebuffer_(s) +#define _Outref_result_buffer_to_(s, c) +#define _Outref_result_bytebuffer_to_(s, c) +#define _Outref_result_buffer_all_(s) +#define _Outref_result_bytebuffer_all_(s) +#define _Outref_result_buffer_maybenull_(s) +#define _Outref_result_bytebuffer_maybenull_(s) +#define _Outref_result_buffer_to_maybenull_(s, c) +#define _Outref_result_bytebuffer_to_maybenull_(s, c) +#define _Outref_result_buffer_all_maybenull_(s) +#define _Outref_result_bytebuffer_all_maybenull_(s) + +/* Return values */ +#define _Ret_z_ +#define _Ret_writes_(s) +#define _Ret_writes_bytes_(s) +#define _Ret_writes_z_(s) +#define _Ret_writes_bytes_to_(s, c) +#define _Ret_writes_maybenull_(s) +#define _Ret_writes_to_maybenull_(s, c) +#define _Ret_writes_maybenull_z_(s) +#define _Ret_maybenull_ +#define _Ret_maybenull_z_ +#define _Ret_null_ +#define _Ret_notnull_ +#define _Ret_writes_bytes_to_(s, c) +#define _Ret_writes_bytes_maybenull_(s) +#define _Ret_writes_bytes_to_maybenull_(s, c) + +/* Other common annotations */ +#define _In_range_(low, hi) +#define _Out_range_(low, hi) +#define _Ret_range_(low, hi) +#define _Deref_in_range_(low, hi) +#define _Deref_out_range_(low, hi) +#define _Deref_inout_range_(low, hi) +#define _Pre_equal_to_(expr) +#define _Post_equal_to_(expr) +#define _Struct_size_bytes_(size) + +/* Function annotations */ +#define _Called_from_function_class_(name) +#define _Check_return_ __checkReturn +#define _Function_class_(name) +#define _Raises_SEH_exception_ +#define _Maybe_raises_SEH_exception_ +#define _Must_inspect_result_ +#define _Use_decl_annotations_ + +/* Success/failure annotations */ +#define _Always_(anno_list) +#define _On_failure_(anno_list) +#define _Return_type_success_(expr) +#define _Success_(expr) + +#define _Reserved_ +#define _Const_ + +/* Buffer properties */ +#define _Readable_bytes_(s) +#define _Readable_elements_(s) +#define _Writable_bytes_(s) +#define _Writable_elements_(s) +#define _Null_terminated_ +#define _NullNull_terminated_ +#define _Pre_readable_size_(s) +#define _Pre_writable_size_(s) +#define _Pre_readable_byte_size_(s) +#define _Pre_writable_byte_size_(s) +#define _Post_readable_size_(s) +#define _Post_writable_size_(s) +#define _Post_readable_byte_size_(s) +#define _Post_writable_byte_size_(s) + +/* Field properties */ +#define _Field_size_(s) +#define _Field_size_full_(s) +#define _Field_size_full_opt_(s) +#define _Field_size_opt_(s) +#define _Field_size_part_(s, c) +#define _Field_size_part_opt_(s, c) +#define _Field_size_bytes_(size) +#define _Field_size_bytes_full_(size) +#define _Field_size_bytes_full_opt_(s) +#define _Field_size_bytes_opt_(s) +#define _Field_size_bytes_part_(s, c) +#define _Field_size_bytes_part_opt_(s, c) +#define _Field_z_ +#define _Field_range_(min, max) + +/* Structural annotations */ +#define _At_(e, a) +#define _At_buffer_(e, i, c, a) +#define _Group_(a) +#define _When_(e, a) + +/* printf/scanf annotations */ +#define _Printf_format_string_ +#define _Scanf_format_string_ +#define _Scanf_s_format_string_ +#define _Format_string_impl_(kind,where) +#define _Printf_format_string_params_(x) +#define _Scanf_format_string_params_(x) +#define _Scanf_s_format_string_params_(x) + +/* Analysis */ +#define _Analysis_assume_(expr) +#define _Analysis_assume_nullterminated_(expr) #define __in #define __out -#define _Inout_ -#define _COM_Outptr_ #define __in_bcount(size) #define __in_ecount(size) @@ -27,6 +218,15 @@ #define __deref_out_ecount(size) #define __in_ecount_opt(s) +#define _In_ +#define _In_opt_ +#define _Null_ + +#define _Out_writes_bytes_opt_(s) +#define _Out_writes_bytes_(s) +#define _In_reads_bytes_(s) +#define _Inout_opt_bytecount_(s) + #ifndef __cplusplus #define static_assert _Static_assert #endif