From 2a266eaad49d6c588287208347129041ba032c2e Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Tue, 12 Dec 2017 12:50:52 +0100 Subject: [PATCH] [general] Added 32-bit support --- build-win32.txt | 19 +++ lib32/SDL2.lib | Bin 0 -> 123580 bytes lib32/vulkan-1.lib | Bin 0 -> 41304 bytes meson.build | 13 +- src/d3d11/d3d11_blend.cpp | 6 +- src/d3d11/d3d11_blend.h | 6 +- src/d3d11/d3d11_buffer.cpp | 12 +- src/d3d11/d3d11_buffer.h | 12 +- src/d3d11/d3d11_class_linkage.cpp | 8 +- src/d3d11/d3d11_class_linkage.h | 8 +- src/d3d11/d3d11_context.cpp | 224 +++++++++++++++--------------- src/d3d11/d3d11_context.h | 224 +++++++++++++++--------------- src/d3d11/d3d11_depth_stencil.cpp | 6 +- src/d3d11/d3d11_depth_stencil.h | 6 +- src/d3d11/d3d11_device.cpp | 84 +++++------ src/d3d11/d3d11_device.h | 86 ++++++------ src/d3d11/d3d11_device_child.h | 6 +- src/d3d11/d3d11_input_layout.cpp | 4 +- src/d3d11/d3d11_input_layout.h | 4 +- src/d3d11/d3d11_main.cpp | 4 +- src/d3d11/d3d11_present.cpp | 8 +- src/d3d11/d3d11_present.h | 15 +- src/d3d11/d3d11_rasterizer.cpp | 6 +- src/d3d11/d3d11_rasterizer.h | 6 +- src/d3d11/d3d11_sampler.cpp | 6 +- src/d3d11/d3d11_sampler.h | 6 +- src/d3d11/d3d11_shader.h | 6 +- src/d3d11/d3d11_texture.cpp | 12 +- src/d3d11/d3d11_texture.h | 12 +- src/d3d11/d3d11_view.h | 8 +- src/dxgi/dxgi_adapter.cpp | 16 +-- src/dxgi/dxgi_adapter.h | 16 +-- src/dxgi/dxgi_device.cpp | 22 +-- src/dxgi/dxgi_device.h | 22 +-- src/dxgi/dxgi_factory.cpp | 18 +-- src/dxgi/dxgi_factory.h | 18 +-- src/dxgi/dxgi_interfaces.h | 22 +-- src/dxgi/dxgi_object.h | 6 +- src/dxgi/dxgi_output.cpp | 28 ++-- src/dxgi/dxgi_output.h | 28 ++-- src/dxgi/dxgi_resource.cpp | 16 +-- src/dxgi/dxgi_resource.h | 18 +-- src/dxgi/dxgi_swapchain.cpp | 26 ++-- src/dxgi/dxgi_swapchain.h | 26 ++-- src/dxvk/dxvk_device.cpp | 18 ++- src/dxvk/dxvk_device.h | 12 ++ src/dxvk/dxvk_swapchain.cpp | 6 +- src/dxvk/dxvk_swapchain.h | 5 +- src/util/com/com_object.h | 4 +- tests/meson.build | 4 - 50 files changed, 596 insertions(+), 552 deletions(-) create mode 100644 build-win32.txt create mode 100755 lib32/SDL2.lib create mode 100755 lib32/vulkan-1.lib diff --git a/build-win32.txt b/build-win32.txt new file mode 100644 index 00000000..57cfbe1c --- /dev/null +++ b/build-win32.txt @@ -0,0 +1,19 @@ +[binaries] +c = '/usr/bin/i686-w64-mingw32-gcc' +cpp = '/usr/bin/i686-w64-mingw32-g++' +ar = '/usr/bin/i686-w64-mingw32-ar' +strip = '/usr/bin/i686-w64-mingw32-strip' +exe_wrapper = 'wine' + +[properties] +c_args = ['-Og', '-ggdb'] +c_link_args = ['-static', '-static-libgcc'] + +cpp_args = ['-std=c++17', '-Og', '-gstabs'] +cpp_link_args = ['-static', '-static-libgcc', '-static-libstdc++', '-Wl,--add-stdcall-alias'] + +[host_machine] +system = 'windows' +cpu_family = 'x86' +cpu = 'x86' +endian = 'little' diff --git a/lib32/SDL2.lib b/lib32/SDL2.lib new file mode 100755 index 0000000000000000000000000000000000000000..533337bf77be4d76462d423c50e0f379261d5a87 GIT binary patch literal 123580 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 literal 0 HcmV?d00001 diff --git a/lib32/vulkan-1.lib b/lib32/vulkan-1.lib new file mode 100755 index 0000000000000000000000000000000000000000..0a08a51962123a5475d6caa125de9e7d835b294c GIT binary patch literal 41304 zcmeHQS&UrO(Jl;Ge#apW5JEO$2r=M*vB$F*0%W{`!G_6<7xr;`=GxPqp6+o^&v*f| z7-I~Wec!Dp%0m=IQ4}HcD-S$HQ55|`JVddhv0?eIn=)q+GijMafdiE~>ik{nP=@kAVJ^v3wFEjxZJwI*ene70I zo;YG?-@gD99e&Wzqe}r49YbtIkN(`yu^;0#(i8tQ^ahrx>CgC!^vG&Mx333K^f=a6 z(Q7|3^!C326dlL%6upKRik>*j&>dF*XgZ0%NRJ;i^wb{!6g|Dw&`xU)?v7x8N(GKb4DMJT708sSsJ%(mbSJB~*4L$jH07Y* zhq{X1y4KKbzXMS8*hxbt>)3xttwBTgzmNTlv>(e=bY#xZt1AE$O`l`vKKxbm=5Gz% zHiYFOJ%)Xy=yq&_qDOve=*?l&L%IvgR5XQkS2TIQrA7FQRQ;u;Yw#Co?@~jPAEO+p zcFIx>f06F|#L!(>PepfQnTmG(&Cu9(07c_#4UJ)a745?Q(bU9Wq*3$*MLThv72S>F zsc0wSE2^ArXzBy3H`4CKhVFR}K+$Nwp?hw`Yov+a7}|?tr)bX~4b?XSDBArGLwDl1 zD;j^t&;<6OqWZgrD#s8PY0q9mcjDiQb{{d6Ed|i@8vY_3y~)ta%K#L;c*4+27XWC& zw!MUO2>VviQLMY7SAS+`$A19o$qnox2-8#H=bp3{rb;Fy6w%$5CIyYOJtkkbu38SO8Y}>rKr~wa< zic#2ll!qvPEC)F&P}dsW|da9sXo)H)W@>Hl|2w94&uKHq~hIqQkWfsj)K2%dm=LYsSZ$ZoESRW@mh?U{z$3jkybqd~judeh)Af z=~`#E65Xx>i*%iPQ-wDiXl3=8YNKB0^^R2wWt*A=OV%xMC8re&2)cmQhe7bhpnT&5gC$nF%apIvY3T4p-`X-0YZ=QVE;tbCp_kT(vb;Oj{Ky%MGfj%euxC zj^R{RZ~22Blv62dtM&1$iCO(%eu&x|rINLW{ZDy*nxY+5j zX{W(TVj$syQVM=KBh!`UjP)i_nzD>gDU(STE^j)e( z$zbq%*W;3fna4L~dMm@G@ti}NcFN8LZWoiYNOw4!$y%CC+ZLZgn%GpWH`2ll3MmJe zq_1WQ>@{0DX%vQt$;jFuk5s0nYgtpe zA>)y@#ggg)Ch42fQDLlEoo+RnI61RA(47^NQz;f8rskR%Q=oGE+7zbvyZ|R6+d>_j zMgZQ)$XYKqfzszDV-m8Yjel;8eMtL-gplmjVZgIBd%1{!?6ys-eR)Pn>&PKtOhDvpvf_Qz?~FrSvfzDUH$r-42=mEm-PE`` zNzgn@9v$E^3%pg;;y>MJ(lHc^@tIP8WUM+f({MAfR_8pay%|^Y9o6yHgy||%x?oEE z_1Sc5Vr{kJZW3L-NQra z;h5r46ypLjlN4z-T@e-s%h-YUX0!w;4B8K87zZ#1L=)@gHIPDPue=0r*L=a788q=0 z>p=mTXT1q$vIEvL%|Xwa`U1~xJBFvpkTy%!vM6G<>zkGRc5j91?#k29;Mw?~tC3RV z%%VO9HO6rNO+I4{a&FNgJCKcInYjv1jHXH!NeH=pb!NKK8k@-P%k`WS(9BEHCoctK zErf(wu4_ymq+y{pc|1?s98=uzE9IQUbl27}j;M|o_86!}O|Y15j<~g93nT9gi#%Ix zv$bIxV&X1{=jtXz%+{>>zFC3GEH+kaHDBN3G3|A=tkPW9s5P3VRnBcf0^d&0DR$}z znTO?mDQj9SJQD*`Y9TmZ|Xqms#Kfzyl$OAvjD^FG-%R z$79+m9Hf;onxI!fEZO5RZCc6JR+`N!Zv9OF0!=~!W~Y~99lprt43EdOaUnLk_AoOw zE;vk6x66e^^0EVbW~Ha`t<@>qJK}LAw+ir?m2!3mg#ac3!|&;!l$9`qvG06UbiP_- zGaKDYe9KAqZAifEZpjX`Fsw1H_O?_Wb)jOoWA%EPs>s<4@yViK~%n|3y{U7@V>%@Saee!&ma4xmD#n(-L|FIDs`+SWfOD&5jJ2rRBxqdZ>3CcXRtBS?>o{gmaN=RR@wQZEitS? zB^g&^s;bp?C#lm)0wS`-p69jpZ&JS^L#h)(N>rYxi`FhoVr^AqSs0LQX5-GSnYY_p zEFzbs?5NgP^+c)?l96@6Gqtk44Js|nAYikrz9mXp%p(hPHDzI*#2lv!M*uc&!yG8g z5j%elVA+EJJ;wq5@+{_kJqK_K=^xKyPSXpR_lCdQpTT^%CjkDn5A*U411xi{MQF2J0y zcV7Wm-oSR;i}`-|`v(5@%mQqD0N_I`|3~=uJNWm;gIFGxbsXEg_#uEnv^x)R-)SLl z8tt$jRMO#bl^kFe}R*yaU@y8wTW-v@9l;{NV7Y{O%itA_O(MBDeV&L5%O9O|!l z72q5!>m1bm?VA8YsJjex-@!ilDfZ1U@;rJBGG2zS8`;cIXYEP;#QVR#HCp#~M0f;l)0_riV9!r_>O1Mny`VFv2Z zfPF9xN8t%L0f*pmI0DDvL3jl2hux6D9(Vx8VGJfcWcnh9`w_yOThCAR^*aC~;D!2@`!S~^M z_zc_tYhe@g!Vb6@u7p8&5}t<(U=+@Q^We*HE_@cg1$Vt-^Z^PN}6?hFh=2ch$ z%iue330wtQLp1n0w7 zVJF-PL(l`4!%FxjjKKH)zvt%Nb7x}yhRSF%8cYoPJ;&P7slOV`j@@V>LfAAe7~-A6v=d=&sN6Z^H6uC%dR*pr2XLuUKK8 zupu#1nSF&sBhR#>W34+D>p%zFSeQXdoosEKDR5&5Nns$YGKBq6=BQ>-C*r0^$eMzW%}dI|w|wHjf6 zwZe$QT4~5*NhH!*y)KISEE&sywQubQJ9Bv~T_1N2a(9d&ce3){REWKJ5mCo}6>n4U z4ZACurkh~dY=>Vk@JnaT;dEsP-aHwg%65|AA4vsqMTB#cxHxbi!RVEl5sXZvsq>jn z#SQgK7Di7E5_=qBIlv z+2u^6XN&f|r`1eCeLz{oUHvk{$+uj~PDPQUp72a}C&k3UdrjPT6@&%>P$PU%C-v(dai&n!7c)0#5TOe*|W>!D+?%k5I z=WV$AG&~z?S1lF;_dHkDs7>&k!|-fsm)gt}-0FuXFPG!b5wri`Z*)g0GH9^wJy&^vP8&qwH4U(!yR% z3vqFe?d7!G?!=h;YPNlwhTqA!(<>^+UV&?y39H(Q&TVnb1Fu*_Z*GzTb)qBac{~a8 zrealnp&ep%&&^GSBX`Kh;22*)ZHAU&YbUdXxTFRzPN!3{LJ>M6z*4*_y8I`N;6>$} z5p6g1D(kq#NSqOg>?q9&=IP{;Xl7A3HOLqy6TWzq&8h1S%oF~?SyfKEI76V2+Sxorsj_8Wdt=h8su{(E=|nrg>gOO!H{qc`VEb z!Z|klhGywj?47DS4G48*%u5%HH%>9yMG_OsqBxi27L!@?BOYmrs1`AKJj?OIsjQw@ z#;`o0j9!sY#H}>55V6u+FIHuEDrdHkPvys_P?fRV`J32w{&G__;}@e*B+Ms`f?Y0> z=kVNAAHdD5CxS|9ZyrfCNIm%%qw2+&2-J@*5kDMPBB_}lcuh5@(1moYqvU5@3A$7A z6FC)25_S|Pk(*;^V%0@?hi_8mr*6j+$8E>;Us7X&bTWj0#3sW~B*?wsz+ylik98gT ziF$*i=zdm^`w?@og3R|Zr$A92R{`!ORx6L}IIW_iSY7T5oKTa+CPR@I#kHT2F($#d zh+Z~4ML!;*HifJ-8iHVXVO76GJ$MdP9y@3wmx`*)O-AA=Mu45lAMcvHC}klwg?N(W zd%r^TWNuQ0A>wfpCg+EE#@3sE>y)ajRFuS+*{r)*;#NT^8X3`=`mSU#5zX|YA)2Xg zK+`+ne$WcZ2uNN|IQC)WfvATTNFPYYI}!$kNJl`I$2dabP;?`pr+XwA*9a(^u9cyR zfLdDx?NPxfMxeBI@r#g2JaQ4&_F@)s#ZYc;T-%FN1QgpuD2zogHlamsrpLXpi%Muo zJRYINZdTSl;35%olWk)VbCWXqfY;HtyY*Om5eNGf9vN#WewxQ}czi*=>S#9+dLGuN zh~iE`v-6ph?Gv=buK0Ss*9;axn483%16S~)26L0qc){FcAyN?kA{%|GZTWburgAge zeHF9!>ecr9m^&A4KI2UI@{6Z#I~#N2K96a1`0tG6QXp&@#m1K3RM3VAss$=&X(#}voX`y-CA0CPa~UyJd- zpV5DD7_7w@J|D;G9zOWL@Spz>pt4c_RQ(nJwR#W}5EW;FIJ$ib=}hAEDjj6xI(<1u z@h?*UvHw(AnAd2p)XxIU62vbY&MRN+^m$89-%92!3$(ZVx2~P4W7u29wJ84&^OjY_ zRo?Owy0E{>TRt5x=wxKSg|&!&5OE>*luqul9-H&LWJ!LP{Q(ioIEVW!ahLT`S1E5) zcNzc3?y_FuE4>fs!v3D#{_UhsFGS?i=Zk&rJHI;@g1$pHpP^>2OLhAesSSE0n#xBH zN{?lKkG%zOEIIBn#61J2BZX_f(q@+sv$W`4ynyBxop@0Sd4WXES1DX~x<~Ho4Y&DX zZ1b5CIX_VF<^jLxq^*4eVZ`qu;#meU7{cZ_<;S+KKa6?_qJGArVho!fl2m|Pfbxru zTG|)J{0?G%HpgV=kpg6CAMRTf##C$2=L}{c2bZ^N9z9Fj4DYU4iin?=h&-;)(_P>8 z({kmZUXG|L=iS89)sE7;VeqlUr`O(v0$Io7?d}sF0tr}t(XB6iL7?&g5l1OMvi&@8?FZ85Iz?Q#P6L-#+ zB(8jpC1CkQC#~&|%t}{c?=F_8!G~lVue?vC=BF>`=;9GvcZex3J|}?49`FfZe$h!k z_a(geT!E_>0QK~cLx_t`@KWtOuZYK!{=37CtT^98fBK5REyf_c1-ASh6j=qnjo9Zq zZ2nYLG_^clVy5_N0T1VY`*d}M7|rr`O>bn+^bKt11v##LBHU#g6Fb7M2`s(7ndi*{ zl3#S>xsf|X?YqAoLd-kXbD*-weUZ6P?a;pABfBT%9HsnNx`Vd2sw$uTro-gV;k(33 zwDDUUkL}L9%}V+EB(btxm}3@m2t-r)MJIlgT3f#DP-TJw$C$@hM&>@X+g{=jW%@&x zh>4!P$RW}mkR?|LSbot_&n8Y!7w4#c<_3omGhj!UiN5`g!{qTb(k1nC?w2uiJNHar5snJ<8+Cc7}d*)m@e6; zOVq^9dWRV@#6>=&zcoj!hsVnrg%kB^p^TP^<=;yTw$nx`V zVx3v(FlE+UmxzfOsV7G)vwa-Xdju>%OM6giZs_+=3z?7tnqPF%-qe|YfFtKYPyz+jOm@Tdsc=G++?oj(9>y3(+{eYteQ;NI8PL1dw$2K8Je+ekx z!-@5LO#v^s1eC{&>=M-z&9wrPUXaF|PtmRXqLcX{^}Ko=N2Fu9%hKgY^Vkn3p3kfg z;pQp80+?TP)ZWCXZs552DY<)3N<<(wa!eM*@bc<6lrn>}kd@EYEwW<8Yy9H)q zD_Xv#2@k$UpvE?%rQ4afPe&zUbTe8SGx1z%r^HNcM$7kZVz*L}xZ>qS-oAP4$`Y;J zB~eq`(DJQK>;}gO*L(4@%a$fijN=9|@LFegm;;eJM!mq15oRYZjf!gUi%#|s1Ccpd zy-u?`SPTFC(Qcy?1Cjf9HP&E{SA#aMyYj}D-n|V(PCx2Zk%>q>{J!uO< z>LB0J>^{>z75Cd~uoJHVi>@!-?!Ls%a?)Z4|NnggmS1$@`zh2~j+!5e^cxL+LPcrR z$Q`HNQJKn7Pt)5B{gIX9DnzRrv^MWv^Y)crLsD^+hQp7)+1(v_YX3Fup|khK1t`Dh z$g3jrx{B}a^DuGOH>>}b#~h^e%#|ABW{#LY{K;Q!){lX@%@9hhAu~RH?0bV<^}s-6 z{T{$RZv|@*ds$ypqx?LU82edQ4}JR2KLsEl`9-(hHs=t%?+kE|^4=C%uT@NEze8j% z4f!82=n8!x5)Du<93GJ9sV^jSRfp7^cF?Os=>PjJz{~qsVy!%sqZdE!AYl1LCw{g% z((l(}zu)Un<(?$@=621ho}m_=%_y;KC0%12O~8Jd<=xc zmiEk4#QUL09rEQEKd#ypdTK0=M9}pfB=i}Ru4=M6vJwvBSUeo5NtQ;YjmnZ^R2!{`3!Y-zOH}{GyXKr=Agc;o@JQg3sM4-Uvx5-srqIG(Twc4mS78?XL#)6R|1eTK+vV?lI;4wKp=?eiQLtHFy}~{q)=Rn!)lu#nxThQoDuME#5SKDlN-h=Jdp~ TBfBP*h4_ZSEqp~zw)Fo1%$7BY literal 0 HcmV?d00001 diff --git a/meson.build b/meson.build index 8b76ef6e..b3d32cdb 100644 --- a/meson.build +++ b/meson.build @@ -1,11 +1,22 @@ project('dxvk', ['c', 'cpp']) +cpu_family = target_machine.cpu_family() + dxvk_compiler = meson.get_compiler('cpp') -dxvk_library_path = meson.source_root() + '/lib' dxvk_include_path = include_directories('./include') +if (cpu_family == 'x86_64') + dxvk_library_path = meson.source_root() + '/lib' +else + dxvk_library_path = meson.source_root() + '/lib32' +endif + lib_vulkan = dxvk_compiler.find_library('vulkan-1', dirs : dxvk_library_path) lib_sdl2 = dxvk_compiler.find_library('SDL2', dirs : dxvk_library_path) +lib_d3d11 = dxvk_compiler.find_library('d3d11') +lib_dxgi = dxvk_compiler.find_library('dxgi') +lib_d3dcompiler_47 = dxvk_compiler.find_library('d3dcompiler_47') + subdir('src') subdir('tests') \ No newline at end of file diff --git a/src/d3d11/d3d11_blend.cpp b/src/d3d11/d3d11_blend.cpp index 22ca2a3b..c3deb82c 100644 --- a/src/d3d11/d3d11_blend.cpp +++ b/src/d3d11/d3d11_blend.cpp @@ -36,7 +36,7 @@ namespace dxvk { } - HRESULT D3D11BlendState::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11BlendState::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11BlendState); @@ -46,12 +46,12 @@ namespace dxvk { } - void D3D11BlendState::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11BlendState::GetDevice(ID3D11Device** ppDevice) { *ppDevice = ref(m_device); } - void D3D11BlendState::GetDesc(D3D11_BLEND_DESC* pDesc) { + void STDMETHODCALLTYPE D3D11BlendState::GetDesc(D3D11_BLEND_DESC* pDesc) { *pDesc = m_desc; } diff --git a/src/d3d11/d3d11_blend.h b/src/d3d11/d3d11_blend.h index d476001a..33cbbbce 100644 --- a/src/d3d11/d3d11_blend.h +++ b/src/d3d11/d3d11_blend.h @@ -20,14 +20,14 @@ namespace dxvk { const D3D11_BLEND_DESC& desc); ~D3D11BlendState(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - void GetDesc( + void STDMETHODCALLTYPE GetDesc( D3D11_BLEND_DESC* pDesc) final; void BindToContext( diff --git a/src/d3d11/d3d11_buffer.cpp b/src/d3d11/d3d11_buffer.cpp index 40517ad9..4cefa1ea 100644 --- a/src/d3d11/d3d11_buffer.cpp +++ b/src/d3d11/d3d11_buffer.cpp @@ -19,7 +19,7 @@ namespace dxvk { } - HRESULT D3D11Buffer::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11Buffer::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11Resource); @@ -34,29 +34,29 @@ namespace dxvk { } - void D3D11Buffer::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11Buffer::GetDevice(ID3D11Device** ppDevice) { *ppDevice = m_device.ref(); } - UINT D3D11Buffer::GetEvictionPriority() { + UINT STDMETHODCALLTYPE D3D11Buffer::GetEvictionPriority() { UINT EvictionPriority = DXGI_RESOURCE_PRIORITY_NORMAL; m_resource->GetEvictionPriority(&EvictionPriority); return EvictionPriority; } - void D3D11Buffer::SetEvictionPriority(UINT EvictionPriority) { + void STDMETHODCALLTYPE D3D11Buffer::SetEvictionPriority(UINT EvictionPriority) { m_resource->SetEvictionPriority(EvictionPriority); } - void D3D11Buffer::GetType(D3D11_RESOURCE_DIMENSION* pResourceDimension) { + void STDMETHODCALLTYPE D3D11Buffer::GetType(D3D11_RESOURCE_DIMENSION* pResourceDimension) { *pResourceDimension = D3D11_RESOURCE_DIMENSION_BUFFER; } - void D3D11Buffer::GetDesc(D3D11_BUFFER_DESC* pDesc) { + void STDMETHODCALLTYPE D3D11Buffer::GetDesc(D3D11_BUFFER_DESC* pDesc) { *pDesc = m_desc; } diff --git a/src/d3d11/d3d11_buffer.h b/src/d3d11/d3d11_buffer.h index f3db42c5..36d9e6fe 100644 --- a/src/d3d11/d3d11_buffer.h +++ b/src/d3d11/d3d11_buffer.h @@ -20,21 +20,21 @@ namespace dxvk { const D3D11_BUFFER_DESC& desc); ~D3D11Buffer(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - void GetType( + void STDMETHODCALLTYPE GetType( D3D11_RESOURCE_DIMENSION *pResourceDimension) final; - UINT GetEvictionPriority() final; + UINT STDMETHODCALLTYPE GetEvictionPriority() final; - void SetEvictionPriority(UINT EvictionPriority) final; + void STDMETHODCALLTYPE SetEvictionPriority(UINT EvictionPriority) final; - void GetDesc( + void STDMETHODCALLTYPE GetDesc( D3D11_BUFFER_DESC *pDesc) final; Rc GetDXVKBuffer(); diff --git a/src/d3d11/d3d11_class_linkage.cpp b/src/d3d11/d3d11_class_linkage.cpp index ceffe7c0..456acb97 100644 --- a/src/d3d11/d3d11_class_linkage.cpp +++ b/src/d3d11/d3d11_class_linkage.cpp @@ -15,7 +15,7 @@ namespace dxvk { } - HRESULT D3D11ClassLinkage::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11ClassLinkage::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11ClassLinkage); @@ -25,12 +25,12 @@ namespace dxvk { } - void D3D11ClassLinkage::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11ClassLinkage::GetDevice(ID3D11Device** ppDevice) { *ppDevice = m_device.ref(); } - HRESULT D3D11ClassLinkage::CreateClassInstance( + HRESULT STDMETHODCALLTYPE D3D11ClassLinkage::CreateClassInstance( LPCSTR pClassTypeName, UINT ConstantBufferOffset, UINT ConstantVectorOffset, @@ -42,7 +42,7 @@ namespace dxvk { } - HRESULT D3D11ClassLinkage::GetClassInstance( + HRESULT STDMETHODCALLTYPE D3D11ClassLinkage::GetClassInstance( LPCSTR pClassInstanceName, UINT InstanceIndex, ID3D11ClassInstance **ppInstance) { diff --git a/src/d3d11/d3d11_class_linkage.h b/src/d3d11/d3d11_class_linkage.h index 511e4d96..e50cb718 100644 --- a/src/d3d11/d3d11_class_linkage.h +++ b/src/d3d11/d3d11_class_linkage.h @@ -16,14 +16,14 @@ namespace dxvk { ~D3D11ClassLinkage(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - HRESULT CreateClassInstance( + HRESULT STDMETHODCALLTYPE CreateClassInstance( LPCSTR pClassTypeName, UINT ConstantBufferOffset, UINT ConstantVectorOffset, @@ -31,7 +31,7 @@ namespace dxvk { UINT SamplerOffset, ID3D11ClassInstance **ppInstance); - HRESULT GetClassInstance( + HRESULT STDMETHODCALLTYPE GetClassInstance( LPCSTR pClassInstanceName, UINT InstanceIndex, ID3D11ClassInstance **ppInstance); diff --git a/src/d3d11/d3d11_context.cpp b/src/d3d11/d3d11_context.cpp index b4d37174..4c1a02e9 100644 --- a/src/d3d11/d3d11_context.cpp +++ b/src/d3d11/d3d11_context.cpp @@ -47,17 +47,17 @@ namespace dxvk { } - ULONG D3D11DeviceContext::AddRef() { + ULONG STDMETHODCALLTYPE D3D11DeviceContext::AddRef() { return m_parent->AddRef(); } - ULONG D3D11DeviceContext::Release() { + ULONG STDMETHODCALLTYPE D3D11DeviceContext::Release() { return m_parent->Release(); } - HRESULT D3D11DeviceContext::QueryInterface( + HRESULT STDMETHODCALLTYPE D3D11DeviceContext::QueryInterface( REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); @@ -69,22 +69,22 @@ namespace dxvk { } - void D3D11DeviceContext::GetDevice(ID3D11Device **ppDevice) { + void STDMETHODCALLTYPE D3D11DeviceContext::GetDevice(ID3D11Device **ppDevice) { *ppDevice = ref(m_parent); } - D3D11_DEVICE_CONTEXT_TYPE D3D11DeviceContext::GetType() { + D3D11_DEVICE_CONTEXT_TYPE STDMETHODCALLTYPE D3D11DeviceContext::GetType() { return m_type; } - UINT D3D11DeviceContext::GetContextFlags() { + UINT STDMETHODCALLTYPE D3D11DeviceContext::GetContextFlags() { return m_flags; } - void D3D11DeviceContext::ClearState() { + void STDMETHODCALLTYPE D3D11DeviceContext::ClearState() { this->IASetInputLayout(nullptr); this->IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED); this->IASetVertexBuffers(0, D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT, nullptr, nullptr, nullptr); @@ -134,7 +134,7 @@ namespace dxvk { } - void D3D11DeviceContext::Flush() { + void STDMETHODCALLTYPE D3D11DeviceContext::Flush() { if (m_type == D3D11_DEVICE_CONTEXT_IMMEDIATE) { m_device->submitCommandList( m_context->endRecording(), @@ -148,14 +148,14 @@ namespace dxvk { } - void D3D11DeviceContext::ExecuteCommandList( + void STDMETHODCALLTYPE D3D11DeviceContext::ExecuteCommandList( ID3D11CommandList* pCommandList, WINBOOL RestoreContextState) { Logger::err("D3D11DeviceContext::ExecuteCommandList: Not implemented"); } - HRESULT D3D11DeviceContext::FinishCommandList( + HRESULT STDMETHODCALLTYPE D3D11DeviceContext::FinishCommandList( WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList) { if (m_type == D3D11_DEVICE_CONTEXT_DEFERRED) { @@ -168,7 +168,7 @@ namespace dxvk { } - HRESULT D3D11DeviceContext::Map( + HRESULT STDMETHODCALLTYPE D3D11DeviceContext::Map( ID3D11Resource* pResource, UINT Subresource, D3D11_MAP MapType, @@ -210,7 +210,7 @@ namespace dxvk { } - void D3D11DeviceContext::Unmap( + void STDMETHODCALLTYPE D3D11DeviceContext::Unmap( ID3D11Resource* pResource, UINT Subresource) { // There's literally nothing we have to do here at the moment @@ -219,17 +219,17 @@ namespace dxvk { } - void D3D11DeviceContext::Begin(ID3D11Asynchronous *pAsync) { + void STDMETHODCALLTYPE D3D11DeviceContext::Begin(ID3D11Asynchronous *pAsync) { Logger::err("D3D11DeviceContext::Begin: Not implemented"); } - void D3D11DeviceContext::End(ID3D11Asynchronous *pAsync) { + void STDMETHODCALLTYPE D3D11DeviceContext::End(ID3D11Asynchronous *pAsync) { Logger::err("D3D11DeviceContext::End: Not implemented"); } - HRESULT D3D11DeviceContext::GetData( + HRESULT STDMETHODCALLTYPE D3D11DeviceContext::GetData( ID3D11Asynchronous* pAsync, void* pData, UINT DataSize, @@ -239,21 +239,21 @@ namespace dxvk { } - void D3D11DeviceContext::SetPredication( + void STDMETHODCALLTYPE D3D11DeviceContext::SetPredication( ID3D11Predicate* pPredicate, WINBOOL PredicateValue) { Logger::err("D3D11DeviceContext::SetPredication: Not implemented"); } - void D3D11DeviceContext::GetPredication( + void STDMETHODCALLTYPE D3D11DeviceContext::GetPredication( ID3D11Predicate** ppPredicate, WINBOOL* pPredicateValue) { Logger::err("D3D11DeviceContext::GetPredication: Not implemented"); } - void D3D11DeviceContext::CopySubresourceRegion( + void STDMETHODCALLTYPE D3D11DeviceContext::CopySubresourceRegion( ID3D11Resource* pDstResource, UINT DstSubresource, UINT DstX, @@ -266,14 +266,14 @@ namespace dxvk { } - void D3D11DeviceContext::CopyResource( + void STDMETHODCALLTYPE D3D11DeviceContext::CopyResource( ID3D11Resource* pDstResource, ID3D11Resource* pSrcResource) { Logger::err("D3D11DeviceContext::CopyResource: Not implemented"); } - void D3D11DeviceContext::CopyStructureCount( + void STDMETHODCALLTYPE D3D11DeviceContext::CopyStructureCount( ID3D11Buffer* pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView* pSrcView) { @@ -281,7 +281,7 @@ namespace dxvk { } - void D3D11DeviceContext::ClearRenderTargetView( + void STDMETHODCALLTYPE D3D11DeviceContext::ClearRenderTargetView( ID3D11RenderTargetView* pRenderTargetView, const FLOAT ColorRGBA[4]) { auto rtv = static_cast(pRenderTargetView); @@ -334,21 +334,21 @@ namespace dxvk { } - void D3D11DeviceContext::ClearUnorderedAccessViewUint( + void STDMETHODCALLTYPE D3D11DeviceContext::ClearUnorderedAccessViewUint( ID3D11UnorderedAccessView* pUnorderedAccessView, const UINT Values[4]) { Logger::err("D3D11DeviceContext::ClearUnorderedAccessViewUint: Not implemented"); } - void D3D11DeviceContext::ClearUnorderedAccessViewFloat( + void STDMETHODCALLTYPE D3D11DeviceContext::ClearUnorderedAccessViewFloat( ID3D11UnorderedAccessView* pUnorderedAccessView, const FLOAT Values[4]) { Logger::err("D3D11DeviceContext::ClearUnorderedAccessViewFloat: Not implemented"); } - void D3D11DeviceContext::ClearDepthStencilView( + void STDMETHODCALLTYPE D3D11DeviceContext::ClearDepthStencilView( ID3D11DepthStencilView* pDepthStencilView, UINT ClearFlags, FLOAT Depth, @@ -395,12 +395,12 @@ namespace dxvk { } - void D3D11DeviceContext::GenerateMips(ID3D11ShaderResourceView* pShaderResourceView) { + void STDMETHODCALLTYPE D3D11DeviceContext::GenerateMips(ID3D11ShaderResourceView* pShaderResourceView) { Logger::err("D3D11DeviceContext::GenerateMips: Not implemented"); } - void D3D11DeviceContext::UpdateSubresource( + void STDMETHODCALLTYPE D3D11DeviceContext::UpdateSubresource( ID3D11Resource* pDstResource, UINT DstSubresource, const D3D11_BOX* pDstBox, @@ -436,20 +436,20 @@ namespace dxvk { } - void D3D11DeviceContext::SetResourceMinLOD( + void STDMETHODCALLTYPE D3D11DeviceContext::SetResourceMinLOD( ID3D11Resource* pResource, FLOAT MinLOD) { Logger::err("D3D11DeviceContext::SetResourceMinLOD: Not implemented"); } - FLOAT D3D11DeviceContext::GetResourceMinLOD(ID3D11Resource* pResource) { + FLOAT STDMETHODCALLTYPE D3D11DeviceContext::GetResourceMinLOD(ID3D11Resource* pResource) { Logger::err("D3D11DeviceContext::GetResourceMinLOD: Not implemented"); return 0.0f; } - void D3D11DeviceContext::ResolveSubresource( + void STDMETHODCALLTYPE D3D11DeviceContext::ResolveSubresource( ID3D11Resource* pDstResource, UINT DstSubresource, ID3D11Resource* pSrcResource, @@ -459,12 +459,12 @@ namespace dxvk { } - void D3D11DeviceContext::DrawAuto() { + void STDMETHODCALLTYPE D3D11DeviceContext::DrawAuto() { Logger::err("D3D11DeviceContext::DrawAuto: Not implemented"); } - void D3D11DeviceContext::Draw( + void STDMETHODCALLTYPE D3D11DeviceContext::Draw( UINT VertexCount, UINT StartVertexLocation) { m_context->draw( @@ -473,7 +473,7 @@ namespace dxvk { } - void D3D11DeviceContext::DrawIndexed( + void STDMETHODCALLTYPE D3D11DeviceContext::DrawIndexed( UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation) { @@ -484,7 +484,7 @@ namespace dxvk { } - void D3D11DeviceContext::DrawInstanced( + void STDMETHODCALLTYPE D3D11DeviceContext::DrawInstanced( UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, @@ -497,7 +497,7 @@ namespace dxvk { } - void D3D11DeviceContext::DrawIndexedInstanced( + void STDMETHODCALLTYPE D3D11DeviceContext::DrawIndexedInstanced( UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, @@ -512,21 +512,21 @@ namespace dxvk { } - void D3D11DeviceContext::DrawIndexedInstancedIndirect( + void STDMETHODCALLTYPE D3D11DeviceContext::DrawIndexedInstancedIndirect( ID3D11Buffer* pBufferForArgs, UINT AlignedByteOffsetForArgs) { Logger::err("D3D11DeviceContext::DrawIndexedInstancedIndirect: Not implemented"); } - void D3D11DeviceContext::DrawInstancedIndirect( + void STDMETHODCALLTYPE D3D11DeviceContext::DrawInstancedIndirect( ID3D11Buffer* pBufferForArgs, UINT AlignedByteOffsetForArgs) { Logger::err("D3D11DeviceContext::DrawInstancedIndirect: Not implemented"); } - void D3D11DeviceContext::Dispatch( + void STDMETHODCALLTYPE D3D11DeviceContext::Dispatch( UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ) { @@ -537,14 +537,14 @@ namespace dxvk { } - void D3D11DeviceContext::DispatchIndirect( + void STDMETHODCALLTYPE D3D11DeviceContext::DispatchIndirect( ID3D11Buffer* pBufferForArgs, UINT AlignedByteOffsetForArgs) { Logger::err("D3D11DeviceContext::DispatchIndirect: Not implemented"); } - void D3D11DeviceContext::IASetInputLayout(ID3D11InputLayout* pInputLayout) { + void STDMETHODCALLTYPE D3D11DeviceContext::IASetInputLayout(ID3D11InputLayout* pInputLayout) { auto inputLayout = static_cast(pInputLayout); if (m_state.ia.inputLayout != inputLayout) { @@ -558,7 +558,7 @@ namespace dxvk { } - void D3D11DeviceContext::IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY Topology) { + void STDMETHODCALLTYPE D3D11DeviceContext::IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY Topology) { if (m_state.ia.primitiveTopology != Topology) { m_state.ia.primitiveTopology = Topology; @@ -624,7 +624,7 @@ namespace dxvk { } - void D3D11DeviceContext::IASetVertexBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::IASetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppVertexBuffers, @@ -662,7 +662,7 @@ namespace dxvk { } - void D3D11DeviceContext::IASetIndexBuffer( + void STDMETHODCALLTYPE D3D11DeviceContext::IASetIndexBuffer( ID3D11Buffer* pIndexBuffer, DXGI_FORMAT Format, UINT Offset) { @@ -701,17 +701,17 @@ namespace dxvk { } - void D3D11DeviceContext::IAGetInputLayout(ID3D11InputLayout** ppInputLayout) { + void STDMETHODCALLTYPE D3D11DeviceContext::IAGetInputLayout(ID3D11InputLayout** ppInputLayout) { *ppInputLayout = m_state.ia.inputLayout.ref(); } - void D3D11DeviceContext::IAGetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY* pTopology) { + void STDMETHODCALLTYPE D3D11DeviceContext::IAGetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY* pTopology) { *pTopology = m_state.ia.primitiveTopology; } - void D3D11DeviceContext::IAGetVertexBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::IAGetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppVertexBuffers, @@ -721,7 +721,7 @@ namespace dxvk { } - void D3D11DeviceContext::IAGetIndexBuffer( + void STDMETHODCALLTYPE D3D11DeviceContext::IAGetIndexBuffer( ID3D11Buffer** pIndexBuffer, DXGI_FORMAT* Format, UINT* Offset) { @@ -729,7 +729,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSSetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::VSSetShader( ID3D11VertexShader* pVertexShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) { @@ -747,7 +747,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSSetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::VSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) { @@ -759,7 +759,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSSetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::VSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) { @@ -771,7 +771,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSSetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::VSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) { @@ -783,7 +783,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSGetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::VSGetShader( ID3D11VertexShader** ppVertexShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) { @@ -797,7 +797,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSGetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::VSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) { @@ -805,7 +805,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSGetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::VSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) { @@ -813,7 +813,7 @@ namespace dxvk { } - void D3D11DeviceContext::VSGetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::VSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) { @@ -821,7 +821,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSSetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::HSSetShader( ID3D11HullShader* pHullShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) { @@ -830,7 +830,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSSetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::HSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) { @@ -838,7 +838,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSSetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::HSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) { @@ -846,7 +846,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSSetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::HSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) { @@ -854,7 +854,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSGetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::HSGetShader( ID3D11HullShader** ppHullShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) { @@ -862,7 +862,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSGetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::HSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) { @@ -870,7 +870,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSGetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::HSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) { @@ -878,7 +878,7 @@ namespace dxvk { } - void D3D11DeviceContext::HSGetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::HSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) { @@ -886,7 +886,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSSetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::DSSetShader( ID3D11DomainShader* pDomainShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) { @@ -895,7 +895,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSSetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::DSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) { @@ -903,7 +903,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSSetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::DSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) { @@ -911,7 +911,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSSetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::DSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) { @@ -919,7 +919,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSGetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::DSGetShader( ID3D11DomainShader** ppDomainShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) { @@ -927,7 +927,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSGetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::DSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) { @@ -935,7 +935,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSGetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::DSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) { @@ -943,7 +943,7 @@ namespace dxvk { } - void D3D11DeviceContext::DSGetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::DSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) { @@ -951,7 +951,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSSetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::GSSetShader( ID3D11GeometryShader* pShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) { @@ -960,7 +960,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSSetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::GSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) { @@ -968,7 +968,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSSetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::GSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) { @@ -976,7 +976,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSSetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::GSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) { @@ -984,7 +984,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSGetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::GSGetShader( ID3D11GeometryShader** ppGeometryShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) { @@ -992,7 +992,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSGetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::GSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) { @@ -1000,7 +1000,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSGetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::GSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) { @@ -1008,7 +1008,7 @@ namespace dxvk { } - void D3D11DeviceContext::GSGetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::GSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) { @@ -1016,7 +1016,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSSetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::PSSetShader( ID3D11PixelShader* pPixelShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) { @@ -1034,7 +1034,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSSetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::PSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) { @@ -1046,7 +1046,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSSetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::PSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) { @@ -1058,7 +1058,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSSetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::PSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) { @@ -1070,7 +1070,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSGetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::PSGetShader( ID3D11PixelShader** ppPixelShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) { @@ -1084,7 +1084,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSGetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::PSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) { @@ -1093,7 +1093,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSGetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::PSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) { @@ -1102,7 +1102,7 @@ namespace dxvk { } - void D3D11DeviceContext::PSGetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::PSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) { @@ -1111,7 +1111,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSSetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::CSSetShader( ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) { @@ -1119,7 +1119,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSSetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::CSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) { @@ -1127,7 +1127,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSSetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::CSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) { @@ -1135,7 +1135,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSSetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::CSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) { @@ -1143,7 +1143,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSSetUnorderedAccessViews( + void STDMETHODCALLTYPE D3D11DeviceContext::CSSetUnorderedAccessViews( UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView* const* ppUnorderedAccessViews, @@ -1152,7 +1152,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSGetShader( + void STDMETHODCALLTYPE D3D11DeviceContext::CSGetShader( ID3D11ComputeShader** ppComputeShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) { @@ -1160,7 +1160,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSGetConstantBuffers( + void STDMETHODCALLTYPE D3D11DeviceContext::CSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) { @@ -1168,7 +1168,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSGetShaderResources( + void STDMETHODCALLTYPE D3D11DeviceContext::CSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) { @@ -1176,7 +1176,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSGetSamplers( + void STDMETHODCALLTYPE D3D11DeviceContext::CSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) { @@ -1184,7 +1184,7 @@ namespace dxvk { } - void D3D11DeviceContext::CSGetUnorderedAccessViews( + void STDMETHODCALLTYPE D3D11DeviceContext::CSGetUnorderedAccessViews( UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) { @@ -1192,7 +1192,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMSetRenderTargets( + void STDMETHODCALLTYPE D3D11DeviceContext::OMSetRenderTargets( UINT NumViews, ID3D11RenderTargetView* const* ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView) { @@ -1234,7 +1234,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews( + void STDMETHODCALLTYPE D3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews( UINT NumRTVs, ID3D11RenderTargetView* const* ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView, @@ -1246,7 +1246,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMSetBlendState( + void STDMETHODCALLTYPE D3D11DeviceContext::OMSetBlendState( ID3D11BlendState* pBlendState, const FLOAT BlendFactor[4], UINT SampleMask) { @@ -1270,7 +1270,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMSetDepthStencilState( + void STDMETHODCALLTYPE D3D11DeviceContext::OMSetDepthStencilState( ID3D11DepthStencilState* pDepthStencilState, UINT StencilRef) { auto depthStencilState = static_cast(pDepthStencilState); @@ -1291,7 +1291,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMGetRenderTargets( + void STDMETHODCALLTYPE D3D11DeviceContext::OMGetRenderTargets( UINT NumViews, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView) { @@ -1309,7 +1309,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMGetRenderTargetsAndUnorderedAccessViews( + void STDMETHODCALLTYPE D3D11DeviceContext::OMGetRenderTargetsAndUnorderedAccessViews( UINT NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView, @@ -1320,7 +1320,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMGetBlendState( + void STDMETHODCALLTYPE D3D11DeviceContext::OMGetBlendState( ID3D11BlendState** ppBlendState, FLOAT BlendFactor[4], UINT* pSampleMask) { @@ -1335,7 +1335,7 @@ namespace dxvk { } - void D3D11DeviceContext::OMGetDepthStencilState( + void STDMETHODCALLTYPE D3D11DeviceContext::OMGetDepthStencilState( ID3D11DepthStencilState** ppDepthStencilState, UINT* pStencilRef) { if (ppDepthStencilState != nullptr) @@ -1346,7 +1346,7 @@ namespace dxvk { } - void D3D11DeviceContext::RSSetState(ID3D11RasterizerState* pRasterizerState) { + void STDMETHODCALLTYPE D3D11DeviceContext::RSSetState(ID3D11RasterizerState* pRasterizerState) { auto rasterizerState = static_cast(pRasterizerState); if (m_state.rs.state != rasterizerState) { @@ -1365,7 +1365,7 @@ namespace dxvk { } - void D3D11DeviceContext::RSSetViewports( + void STDMETHODCALLTYPE D3D11DeviceContext::RSSetViewports( UINT NumViewports, const D3D11_VIEWPORT* pViewports) { m_state.rs.numViewports = NumViewports; @@ -1377,7 +1377,7 @@ namespace dxvk { } - void D3D11DeviceContext::RSSetScissorRects( + void STDMETHODCALLTYPE D3D11DeviceContext::RSSetScissorRects( UINT NumRects, const D3D11_RECT* pRects) { m_state.rs.numScissors = NumRects; @@ -1395,13 +1395,13 @@ namespace dxvk { } - void D3D11DeviceContext::RSGetState(ID3D11RasterizerState** ppRasterizerState) { + void STDMETHODCALLTYPE D3D11DeviceContext::RSGetState(ID3D11RasterizerState** ppRasterizerState) { if (ppRasterizerState != nullptr) *ppRasterizerState = m_state.rs.state.ref(); } - void D3D11DeviceContext::RSGetViewports( + void STDMETHODCALLTYPE D3D11DeviceContext::RSGetViewports( UINT* pNumViewports, D3D11_VIEWPORT* pViewports) { if (pViewports != nullptr) { @@ -1423,7 +1423,7 @@ namespace dxvk { } - void D3D11DeviceContext::RSGetScissorRects( + void STDMETHODCALLTYPE D3D11DeviceContext::RSGetScissorRects( UINT* pNumRects, D3D11_RECT* pRects) { if (pRects != nullptr) { @@ -1443,7 +1443,7 @@ namespace dxvk { } - void D3D11DeviceContext::SOSetTargets( + void STDMETHODCALLTYPE D3D11DeviceContext::SOSetTargets( UINT NumBuffers, ID3D11Buffer* const* ppSOTargets, const UINT* pOffsets) { @@ -1451,7 +1451,7 @@ namespace dxvk { } - void D3D11DeviceContext::SOGetTargets( + void STDMETHODCALLTYPE D3D11DeviceContext::SOGetTargets( UINT NumBuffers, ID3D11Buffer** ppSOTargets) { Logger::err("D3D11DeviceContext::SOGetTargets: Not implemented"); diff --git a/src/d3d11/d3d11_context.h b/src/d3d11/d3d11_context.h index b1449f52..6722a18b 100644 --- a/src/d3d11/d3d11_context.h +++ b/src/d3d11/d3d11_context.h @@ -20,62 +20,62 @@ namespace dxvk { Rc device); ~D3D11DeviceContext(); - ULONG AddRef() final; + ULONG STDMETHODCALLTYPE AddRef() final; - ULONG Release() final; + ULONG STDMETHODCALLTYPE Release() final; - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice(ID3D11Device **ppDevice) final; + void STDMETHODCALLTYPE GetDevice(ID3D11Device **ppDevice) final; - D3D11_DEVICE_CONTEXT_TYPE GetType() final; + D3D11_DEVICE_CONTEXT_TYPE STDMETHODCALLTYPE GetType() final; - UINT GetContextFlags() final; + UINT STDMETHODCALLTYPE GetContextFlags() final; - void ClearState() final; + void STDMETHODCALLTYPE ClearState() final; - void Flush() final; + void STDMETHODCALLTYPE Flush() final; - void ExecuteCommandList( + void STDMETHODCALLTYPE ExecuteCommandList( ID3D11CommandList* pCommandList, WINBOOL RestoreContextState) final; - HRESULT FinishCommandList( + HRESULT STDMETHODCALLTYPE FinishCommandList( WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList) final; - HRESULT Map( + HRESULT STDMETHODCALLTYPE Map( ID3D11Resource* pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE* pMappedResource) final; - void Unmap( + void STDMETHODCALLTYPE Unmap( ID3D11Resource* pResource, UINT Subresource) final; - void Begin(ID3D11Asynchronous *pAsync) final; + void STDMETHODCALLTYPE Begin(ID3D11Asynchronous *pAsync) final; - void End(ID3D11Asynchronous *pAsync) final; + void STDMETHODCALLTYPE End(ID3D11Asynchronous *pAsync) final; - HRESULT GetData( + HRESULT STDMETHODCALLTYPE GetData( ID3D11Asynchronous* pAsync, void* pData, UINT DataSize, UINT GetDataFlags) final; - void SetPredication( + void STDMETHODCALLTYPE SetPredication( ID3D11Predicate* pPredicate, WINBOOL PredicateValue) final; - void GetPredication( + void STDMETHODCALLTYPE GetPredication( ID3D11Predicate** ppPredicate, WINBOOL* pPredicateValue) final; - void CopySubresourceRegion( + void STDMETHODCALLTYPE CopySubresourceRegion( ID3D11Resource* pDstResource, UINT DstSubresource, UINT DstX, @@ -85,37 +85,37 @@ namespace dxvk { UINT SrcSubresource, const D3D11_BOX* pSrcBox) final; - void CopyResource( + void STDMETHODCALLTYPE CopyResource( ID3D11Resource* pDstResource, ID3D11Resource* pSrcResource) final; - void CopyStructureCount( + void STDMETHODCALLTYPE CopyStructureCount( ID3D11Buffer* pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView* pSrcView) final; - void ClearRenderTargetView( + void STDMETHODCALLTYPE ClearRenderTargetView( ID3D11RenderTargetView* pRenderTargetView, const FLOAT ColorRGBA[4]) final; - void ClearUnorderedAccessViewUint( + void STDMETHODCALLTYPE ClearUnorderedAccessViewUint( ID3D11UnorderedAccessView* pUnorderedAccessView, const UINT Values[4]) final; - void ClearUnorderedAccessViewFloat( + void STDMETHODCALLTYPE ClearUnorderedAccessViewFloat( ID3D11UnorderedAccessView* pUnorderedAccessView, const FLOAT Values[4]) final; - void ClearDepthStencilView( + void STDMETHODCALLTYPE ClearDepthStencilView( ID3D11DepthStencilView* pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil) final; - void GenerateMips( + void STDMETHODCALLTYPE GenerateMips( ID3D11ShaderResourceView* pShaderResourceView) final; - void UpdateSubresource( + void STDMETHODCALLTYPE UpdateSubresource( ID3D11Resource* pDstResource, UINT DstSubresource, const D3D11_BOX* pDstBox, @@ -123,354 +123,354 @@ namespace dxvk { UINT SrcRowPitch, UINT SrcDepthPitch) final; - void SetResourceMinLOD( + void STDMETHODCALLTYPE SetResourceMinLOD( ID3D11Resource* pResource, FLOAT MinLOD) final; - FLOAT GetResourceMinLOD( + FLOAT STDMETHODCALLTYPE GetResourceMinLOD( ID3D11Resource* pResource) final; - void ResolveSubresource( + void STDMETHODCALLTYPE ResolveSubresource( ID3D11Resource* pDstResource, UINT DstSubresource, ID3D11Resource* pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format) final; - void DrawAuto() final; + void STDMETHODCALLTYPE DrawAuto() final; - void Draw( + void STDMETHODCALLTYPE Draw( UINT VertexCount, UINT StartVertexLocation) final; - void DrawIndexed( + void STDMETHODCALLTYPE DrawIndexed( UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation) final; - void DrawInstanced( + void STDMETHODCALLTYPE DrawInstanced( UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation) final; - void DrawIndexedInstanced( + void STDMETHODCALLTYPE DrawIndexedInstanced( UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation) final; - void DrawIndexedInstancedIndirect( + void STDMETHODCALLTYPE DrawIndexedInstancedIndirect( ID3D11Buffer* pBufferForArgs, UINT AlignedByteOffsetForArgs) final; - void DrawInstancedIndirect( + void STDMETHODCALLTYPE DrawInstancedIndirect( ID3D11Buffer* pBufferForArgs, UINT AlignedByteOffsetForArgs) final; - void Dispatch( + void STDMETHODCALLTYPE Dispatch( UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ) final; - void DispatchIndirect( + void STDMETHODCALLTYPE DispatchIndirect( ID3D11Buffer* pBufferForArgs, UINT AlignedByteOffsetForArgs) final; - void IASetInputLayout( + void STDMETHODCALLTYPE IASetInputLayout( ID3D11InputLayout* pInputLayout) final; - void IASetPrimitiveTopology( + void STDMETHODCALLTYPE IASetPrimitiveTopology( D3D11_PRIMITIVE_TOPOLOGY Topology) final; - void IASetVertexBuffers( + void STDMETHODCALLTYPE IASetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppVertexBuffers, const UINT* pStrides, const UINT* pOffsets) final; - void IASetIndexBuffer( + void STDMETHODCALLTYPE IASetIndexBuffer( ID3D11Buffer* pIndexBuffer, DXGI_FORMAT Format, UINT Offset) final; - void IAGetInputLayout( + void STDMETHODCALLTYPE IAGetInputLayout( ID3D11InputLayout** ppInputLayout) final; - void IAGetPrimitiveTopology( + void STDMETHODCALLTYPE IAGetPrimitiveTopology( D3D11_PRIMITIVE_TOPOLOGY* pTopology) final; - void IAGetVertexBuffers( + void STDMETHODCALLTYPE IAGetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppVertexBuffers, UINT* pStrides, UINT* pOffsets) final; - void IAGetIndexBuffer( + void STDMETHODCALLTYPE IAGetIndexBuffer( ID3D11Buffer** pIndexBuffer, DXGI_FORMAT* Format, UINT* Offset) final; - void VSSetShader( + void STDMETHODCALLTYPE VSSetShader( ID3D11VertexShader* pVertexShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) final; - void VSSetConstantBuffers( + void STDMETHODCALLTYPE VSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) final; - void VSSetShaderResources( + void STDMETHODCALLTYPE VSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) final; - void VSSetSamplers( + void STDMETHODCALLTYPE VSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) final; - void VSGetShader( + void STDMETHODCALLTYPE VSGetShader( ID3D11VertexShader** ppVertexShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) final; - void VSGetConstantBuffers( + void STDMETHODCALLTYPE VSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) final; - void VSGetShaderResources( + void STDMETHODCALLTYPE VSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) final; - void VSGetSamplers( + void STDMETHODCALLTYPE VSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) final; - void HSSetShader( + void STDMETHODCALLTYPE HSSetShader( ID3D11HullShader* pHullShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) final; - void HSSetShaderResources( + void STDMETHODCALLTYPE HSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) final; - void HSSetConstantBuffers( + void STDMETHODCALLTYPE HSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) final; - void HSSetSamplers( + void STDMETHODCALLTYPE HSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) final; - void HSGetShader( + void STDMETHODCALLTYPE HSGetShader( ID3D11HullShader** ppHullShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) final; - void HSGetConstantBuffers( + void STDMETHODCALLTYPE HSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) final; - void HSGetShaderResources( + void STDMETHODCALLTYPE HSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) final; - void HSGetSamplers( + void STDMETHODCALLTYPE HSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) final; - void DSSetShader( + void STDMETHODCALLTYPE DSSetShader( ID3D11DomainShader* pDomainShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) final; - void DSSetShaderResources( + void STDMETHODCALLTYPE DSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) final; - void DSSetConstantBuffers( + void STDMETHODCALLTYPE DSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) final; - void DSSetSamplers( + void STDMETHODCALLTYPE DSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) final; - void DSGetShader( + void STDMETHODCALLTYPE DSGetShader( ID3D11DomainShader** ppDomainShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) final; - void DSGetConstantBuffers( + void STDMETHODCALLTYPE DSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) final; - void DSGetShaderResources( + void STDMETHODCALLTYPE DSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) final; - void DSGetSamplers( + void STDMETHODCALLTYPE DSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) final; - void GSSetShader( + void STDMETHODCALLTYPE GSSetShader( ID3D11GeometryShader* pShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) final; - void GSSetConstantBuffers( + void STDMETHODCALLTYPE GSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) final; - void GSSetShaderResources( + void STDMETHODCALLTYPE GSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) final; - void GSSetSamplers( + void STDMETHODCALLTYPE GSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) final; - void GSGetShader( + void STDMETHODCALLTYPE GSGetShader( ID3D11GeometryShader** ppGeometryShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) final; - void GSGetConstantBuffers( + void STDMETHODCALLTYPE GSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) final; - void GSGetShaderResources( + void STDMETHODCALLTYPE GSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) final; - void GSGetSamplers( + void STDMETHODCALLTYPE GSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) final; - void PSSetShader( + void STDMETHODCALLTYPE PSSetShader( ID3D11PixelShader* pPixelShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) final; - void PSSetConstantBuffers( + void STDMETHODCALLTYPE PSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) final; - void PSSetShaderResources( + void STDMETHODCALLTYPE PSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) final; - void PSSetSamplers( + void STDMETHODCALLTYPE PSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) final; - void PSGetShader( + void STDMETHODCALLTYPE PSGetShader( ID3D11PixelShader** ppPixelShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) final; - void PSGetConstantBuffers( + void STDMETHODCALLTYPE PSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) final; - void PSGetShaderResources( + void STDMETHODCALLTYPE PSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) final; - void PSGetSamplers( + void STDMETHODCALLTYPE PSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) final; - void CSSetShader( + void STDMETHODCALLTYPE CSSetShader( ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance* const* ppClassInstances, UINT NumClassInstances) final; - void CSSetConstantBuffers( + void STDMETHODCALLTYPE CSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer* const* ppConstantBuffers) final; - void CSSetShaderResources( + void STDMETHODCALLTYPE CSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView* const* ppShaderResourceViews) final; - void CSSetSamplers( + void STDMETHODCALLTYPE CSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState* const* ppSamplers) final; - void CSSetUnorderedAccessViews( + void STDMETHODCALLTYPE CSSetUnorderedAccessViews( UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView* const* ppUnorderedAccessViews, const UINT* pUAVInitialCounts) final; - void CSGetShader( + void STDMETHODCALLTYPE CSGetShader( ID3D11ComputeShader** ppComputeShader, ID3D11ClassInstance** ppClassInstances, UINT* pNumClassInstances) final; - void CSGetConstantBuffers( + void STDMETHODCALLTYPE CSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer** ppConstantBuffers) final; - void CSGetShaderResources( + void STDMETHODCALLTYPE CSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView** ppShaderResourceViews) final; - void CSGetSamplers( + void STDMETHODCALLTYPE CSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState** ppSamplers) final; - void CSGetUnorderedAccessViews( + void STDMETHODCALLTYPE CSGetUnorderedAccessViews( UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) final; - void OMSetRenderTargets( + void STDMETHODCALLTYPE OMSetRenderTargets( UINT NumViews, ID3D11RenderTargetView* const* ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView) final; - void OMSetRenderTargetsAndUnorderedAccessViews( + void STDMETHODCALLTYPE OMSetRenderTargetsAndUnorderedAccessViews( UINT NumRTVs, ID3D11RenderTargetView* const* ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView, @@ -479,21 +479,21 @@ namespace dxvk { ID3D11UnorderedAccessView* const* ppUnorderedAccessViews, const UINT* pUAVInitialCounts) final; - void OMSetBlendState( + void STDMETHODCALLTYPE OMSetBlendState( ID3D11BlendState* pBlendState, const FLOAT BlendFactor[4], UINT SampleMask) final; - void OMSetDepthStencilState( + void STDMETHODCALLTYPE OMSetDepthStencilState( ID3D11DepthStencilState* pDepthStencilState, UINT StencilRef) final; - void OMGetRenderTargets( + void STDMETHODCALLTYPE OMGetRenderTargets( UINT NumViews, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView) final; - void OMGetRenderTargetsAndUnorderedAccessViews( + void STDMETHODCALLTYPE OMGetRenderTargetsAndUnorderedAccessViews( UINT NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView** ppDepthStencilView, @@ -501,43 +501,43 @@ namespace dxvk { UINT NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews) final; - void OMGetBlendState( + void STDMETHODCALLTYPE OMGetBlendState( ID3D11BlendState** ppBlendState, FLOAT BlendFactor[4], UINT* pSampleMask) final; - void OMGetDepthStencilState( + void STDMETHODCALLTYPE OMGetDepthStencilState( ID3D11DepthStencilState** ppDepthStencilState, UINT* pStencilRef) final; - void RSSetState( + void STDMETHODCALLTYPE RSSetState( ID3D11RasterizerState* pRasterizerState) final; - void RSSetViewports( + void STDMETHODCALLTYPE RSSetViewports( UINT NumViewports, const D3D11_VIEWPORT* pViewports) final; - void RSSetScissorRects( + void STDMETHODCALLTYPE RSSetScissorRects( UINT NumRects, const D3D11_RECT* pRects) final; - void RSGetState( + void STDMETHODCALLTYPE RSGetState( ID3D11RasterizerState** ppRasterizerState) final; - void RSGetViewports( + void STDMETHODCALLTYPE RSGetViewports( UINT* pNumViewports, D3D11_VIEWPORT* pViewports) final; - void RSGetScissorRects( + void STDMETHODCALLTYPE RSGetScissorRects( UINT* pNumRects, D3D11_RECT* pRects) final; - void SOSetTargets( + void STDMETHODCALLTYPE SOSetTargets( UINT NumBuffers, ID3D11Buffer* const* ppSOTargets, const UINT* pOffsets) final; - void SOGetTargets( + void STDMETHODCALLTYPE SOGetTargets( UINT NumBuffers, ID3D11Buffer** ppSOTargets) final; diff --git a/src/d3d11/d3d11_depth_stencil.cpp b/src/d3d11/d3d11_depth_stencil.cpp index 7be5c5db..8bf8a374 100644 --- a/src/d3d11/d3d11_depth_stencil.cpp +++ b/src/d3d11/d3d11_depth_stencil.cpp @@ -27,7 +27,7 @@ namespace dxvk { } - HRESULT D3D11DepthStencilState::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11DepthStencilState::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11DepthStencilState); @@ -37,12 +37,12 @@ namespace dxvk { } - void D3D11DepthStencilState::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11DepthStencilState::GetDevice(ID3D11Device** ppDevice) { *ppDevice = ref(m_device); } - void D3D11DepthStencilState::GetDesc(D3D11_DEPTH_STENCIL_DESC* pDesc) { + void STDMETHODCALLTYPE D3D11DepthStencilState::GetDesc(D3D11_DEPTH_STENCIL_DESC* pDesc) { *pDesc = m_desc; } diff --git a/src/d3d11/d3d11_depth_stencil.h b/src/d3d11/d3d11_depth_stencil.h index f697ae92..c4f3ee6d 100644 --- a/src/d3d11/d3d11_depth_stencil.h +++ b/src/d3d11/d3d11_depth_stencil.h @@ -20,14 +20,14 @@ namespace dxvk { const D3D11_DEPTH_STENCIL_DESC& desc); ~D3D11DepthStencilState(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - void GetDesc( + void STDMETHODCALLTYPE GetDesc( D3D11_DEPTH_STENCIL_DESC* pDesc) final; void BindToContext( diff --git a/src/d3d11/d3d11_device.cpp b/src/d3d11/d3d11_device.cpp index 77f1a562..0c25cc70 100644 --- a/src/d3d11/d3d11_device.cpp +++ b/src/d3d11/d3d11_device.cpp @@ -45,7 +45,7 @@ namespace dxvk { } - HRESULT D3D11Device::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11Device::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11Device); @@ -63,7 +63,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateBuffer( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateBuffer( const D3D11_BUFFER_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Buffer** ppBuffer) { @@ -153,7 +153,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateTexture1D( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateTexture1D( const D3D11_TEXTURE1D_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture1D** ppTexture1D) { @@ -162,7 +162,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateTexture2D( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateTexture2D( const D3D11_TEXTURE2D_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture2D** ppTexture2D) { @@ -255,7 +255,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateTexture3D( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateTexture3D( const D3D11_TEXTURE3D_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture3D** ppTexture3D) { @@ -264,7 +264,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateShaderResourceView( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateShaderResourceView( ID3D11Resource* pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc, ID3D11ShaderResourceView** ppSRView) { @@ -399,7 +399,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateUnorderedAccessView( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateUnorderedAccessView( ID3D11Resource* pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC* pDesc, ID3D11UnorderedAccessView** ppUAView) { @@ -408,7 +408,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateRenderTargetView( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateRenderTargetView( ID3D11Resource* pResource, const D3D11_RENDER_TARGET_VIEW_DESC* pDesc, ID3D11RenderTargetView** ppRTView) { @@ -503,7 +503,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateDepthStencilView( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateDepthStencilView( ID3D11Resource* pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC* pDesc, ID3D11DepthStencilView** ppDepthStencilView) { @@ -598,7 +598,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateInputLayout( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateInputLayout( const D3D11_INPUT_ELEMENT_DESC* pInputElementDescs, UINT NumElements, const void* pShaderBytecodeWithInputSignature, @@ -645,7 +645,7 @@ namespace dxvk { // Create vertex input binding description. The // stride is dynamic state in D3D11 and will be - // set by D3D11DeviceContext::IASetVertexBuffers. + // set by STDMETHODCALLTYPE D3D11DeviceContext::IASetVertexBuffers. DxvkVertexBinding binding; binding.binding = pInputElementDescs[i].InputSlot; binding.inputRate = VK_VERTEX_INPUT_RATE_VERTEX; @@ -700,7 +700,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateVertexShader( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateVertexShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, @@ -720,7 +720,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateGeometryShader( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateGeometryShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, @@ -730,7 +730,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateGeometryShaderWithStreamOutput( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateGeometryShaderWithStreamOutput( const void* pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY* pSODeclaration, @@ -745,7 +745,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreatePixelShader( + HRESULT STDMETHODCALLTYPE D3D11Device::CreatePixelShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, @@ -765,7 +765,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateHullShader( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateHullShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, @@ -775,7 +775,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateDomainShader( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateDomainShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, @@ -785,7 +785,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateComputeShader( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateComputeShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, @@ -795,13 +795,13 @@ namespace dxvk { } - HRESULT D3D11Device::CreateClassLinkage(ID3D11ClassLinkage** ppLinkage) { + HRESULT STDMETHODCALLTYPE D3D11Device::CreateClassLinkage(ID3D11ClassLinkage** ppLinkage) { *ppLinkage = ref(new D3D11ClassLinkage(this)); return S_OK; } - HRESULT D3D11Device::CreateBlendState( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateBlendState( const D3D11_BLEND_DESC* pBlendStateDesc, ID3D11BlendState** ppBlendState) { D3D11_BLEND_DESC desc; @@ -833,7 +833,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateDepthStencilState( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateDepthStencilState( const D3D11_DEPTH_STENCIL_DESC* pDepthStencilDesc, ID3D11DepthStencilState** ppDepthStencilState) { D3D11_DEPTH_STENCIL_DESC desc; @@ -863,7 +863,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateRasterizerState( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateRasterizerState( const D3D11_RASTERIZER_DESC* pRasterizerDesc, ID3D11RasterizerState** ppRasterizerState) { D3D11_RASTERIZER_DESC desc; @@ -889,7 +889,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateSamplerState( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateSamplerState( const D3D11_SAMPLER_DESC* pSamplerDesc, ID3D11SamplerState** ppSamplerState) { DxvkSamplerCreateInfo info; @@ -943,7 +943,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateQuery( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateQuery( const D3D11_QUERY_DESC* pQueryDesc, ID3D11Query** ppQuery) { Logger::err("D3D11Device::CreateQuery: Not implemented"); @@ -951,7 +951,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreatePredicate( + HRESULT STDMETHODCALLTYPE D3D11Device::CreatePredicate( const D3D11_QUERY_DESC* pPredicateDesc, ID3D11Predicate** ppPredicate) { Logger::err("D3D11Device::CreatePredicate: Not implemented"); @@ -959,7 +959,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateCounter( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateCounter( const D3D11_COUNTER_DESC* pCounterDesc, ID3D11Counter** ppCounter) { Logger::err("D3D11Device::CreateCounter: Not implemented"); @@ -967,7 +967,7 @@ namespace dxvk { } - HRESULT D3D11Device::CreateDeferredContext( + HRESULT STDMETHODCALLTYPE D3D11Device::CreateDeferredContext( UINT ContextFlags, ID3D11DeviceContext** ppDeferredContext) { Logger::err("D3D11Device::CreateDeferredContext: Not implemented"); @@ -975,7 +975,7 @@ namespace dxvk { } - HRESULT D3D11Device::OpenSharedResource( + HRESULT STDMETHODCALLTYPE D3D11Device::OpenSharedResource( HANDLE hResource, REFIID ReturnedInterface, void** ppResource) { @@ -984,7 +984,7 @@ namespace dxvk { } - HRESULT D3D11Device::CheckFormatSupport( + HRESULT STDMETHODCALLTYPE D3D11Device::CheckFormatSupport( DXGI_FORMAT Format, UINT* pFormatSupport) { Logger::err("D3D11Device::CheckFormatSupport: Not implemented"); @@ -992,7 +992,7 @@ namespace dxvk { } - HRESULT D3D11Device::CheckMultisampleQualityLevels( + HRESULT STDMETHODCALLTYPE D3D11Device::CheckMultisampleQualityLevels( DXGI_FORMAT Format, UINT SampleCount, UINT* pNumQualityLevels) { @@ -1030,12 +1030,12 @@ namespace dxvk { } - void D3D11Device::CheckCounterInfo(D3D11_COUNTER_INFO* pCounterInfo) { + void STDMETHODCALLTYPE D3D11Device::CheckCounterInfo(D3D11_COUNTER_INFO* pCounterInfo) { Logger::err("D3D11Device::CheckCounterInfo: Not implemented"); } - HRESULT D3D11Device::CheckCounter( + HRESULT STDMETHODCALLTYPE D3D11Device::CheckCounter( const D3D11_COUNTER_DESC* pDesc, D3D11_COUNTER_TYPE* pType, UINT* pActiveCounters, @@ -1050,7 +1050,7 @@ namespace dxvk { } - HRESULT D3D11Device::CheckFeatureSupport( + HRESULT STDMETHODCALLTYPE D3D11Device::CheckFeatureSupport( D3D11_FEATURE Feature, void* pFeatureSupportData, UINT FeatureSupportDataSize) { @@ -1059,52 +1059,52 @@ namespace dxvk { } - HRESULT D3D11Device::GetPrivateData( + HRESULT STDMETHODCALLTYPE D3D11Device::GetPrivateData( REFGUID guid, UINT* pDataSize, void* pData) { return m_dxgiDevice->GetPrivateData(guid, pDataSize, pData); } - HRESULT D3D11Device::SetPrivateData( + HRESULT STDMETHODCALLTYPE D3D11Device::SetPrivateData( REFGUID guid, UINT DataSize, const void* pData) { return m_dxgiDevice->SetPrivateData(guid, DataSize, pData); } - HRESULT D3D11Device::SetPrivateDataInterface( + HRESULT STDMETHODCALLTYPE D3D11Device::SetPrivateDataInterface( REFGUID guid, const IUnknown* pData) { return m_dxgiDevice->SetPrivateDataInterface(guid, pData); } - D3D_FEATURE_LEVEL D3D11Device::GetFeatureLevel() { + D3D_FEATURE_LEVEL STDMETHODCALLTYPE D3D11Device::GetFeatureLevel() { return m_featureLevel; } - UINT D3D11Device::GetCreationFlags() { + UINT STDMETHODCALLTYPE D3D11Device::GetCreationFlags() { return m_featureFlags; } - HRESULT D3D11Device::GetDeviceRemovedReason() { + HRESULT STDMETHODCALLTYPE D3D11Device::GetDeviceRemovedReason() { Logger::err("D3D11Device::GetDeviceRemovedReason: Not implemented"); return E_NOTIMPL; } - void D3D11Device::GetImmediateContext(ID3D11DeviceContext** ppImmediateContext) { + void STDMETHODCALLTYPE D3D11Device::GetImmediateContext(ID3D11DeviceContext** ppImmediateContext) { *ppImmediateContext = ref(m_context); } - HRESULT D3D11Device::SetExceptionMode(UINT RaiseFlags) { + HRESULT STDMETHODCALLTYPE D3D11Device::SetExceptionMode(UINT RaiseFlags) { Logger::err("D3D11Device::SetExceptionMode: Not implemented"); return E_NOTIMPL; } - UINT D3D11Device::GetExceptionMode() { + UINT STDMETHODCALLTYPE D3D11Device::GetExceptionMode() { Logger::err("D3D11Device::GetExceptionMode: Not implemented"); return 0; } diff --git a/src/d3d11/d3d11_device.h b/src/d3d11/d3d11_device.h index ac627be3..681621f0 100644 --- a/src/d3d11/d3d11_device.h +++ b/src/d3d11/d3d11_device.h @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include "../dxgi/dxgi_object.h" +#include "../dxgi/dxgi_resource.h" #include "d3d11_interfaces.h" #include "d3d11_state.h" @@ -25,70 +25,70 @@ namespace dxvk { UINT featureFlags); ~D3D11Device(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - HRESULT CreateBuffer( + HRESULT STDMETHODCALLTYPE CreateBuffer( const D3D11_BUFFER_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Buffer** ppBuffer) final; - HRESULT CreateTexture1D( + HRESULT STDMETHODCALLTYPE CreateTexture1D( const D3D11_TEXTURE1D_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture1D** ppTexture1D) final; - HRESULT CreateTexture2D( + HRESULT STDMETHODCALLTYPE CreateTexture2D( const D3D11_TEXTURE2D_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture2D** ppTexture2D) final; - HRESULT CreateTexture3D( + HRESULT STDMETHODCALLTYPE CreateTexture3D( const D3D11_TEXTURE3D_DESC* pDesc, const D3D11_SUBRESOURCE_DATA* pInitialData, ID3D11Texture3D** ppTexture3D) final; - HRESULT CreateShaderResourceView( + HRESULT STDMETHODCALLTYPE CreateShaderResourceView( ID3D11Resource* pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc, ID3D11ShaderResourceView** ppSRView) final; - HRESULT CreateUnorderedAccessView( + HRESULT STDMETHODCALLTYPE CreateUnorderedAccessView( ID3D11Resource* pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC* pDesc, ID3D11UnorderedAccessView** ppUAView) final; - HRESULT CreateRenderTargetView( + HRESULT STDMETHODCALLTYPE CreateRenderTargetView( ID3D11Resource* pResource, const D3D11_RENDER_TARGET_VIEW_DESC* pDesc, ID3D11RenderTargetView** ppRTView) final; - HRESULT CreateDepthStencilView( + HRESULT STDMETHODCALLTYPE CreateDepthStencilView( ID3D11Resource* pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC* pDesc, ID3D11DepthStencilView** ppDepthStencilView) final; - HRESULT CreateInputLayout( + HRESULT STDMETHODCALLTYPE CreateInputLayout( const D3D11_INPUT_ELEMENT_DESC* pInputElementDescs, UINT NumElements, const void* pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout** ppInputLayout) final; - HRESULT CreateVertexShader( + HRESULT STDMETHODCALLTYPE CreateVertexShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11VertexShader** ppVertexShader) final; - HRESULT CreateGeometryShader( + HRESULT STDMETHODCALLTYPE CreateGeometryShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11GeometryShader** ppGeometryShader) final; - HRESULT CreateGeometryShaderWithStreamOutput( + HRESULT STDMETHODCALLTYPE CreateGeometryShaderWithStreamOutput( const void* pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY* pSODeclaration, @@ -99,83 +99,83 @@ namespace dxvk { ID3D11ClassLinkage* pClassLinkage, ID3D11GeometryShader** ppGeometryShader) final; - HRESULT CreatePixelShader( + HRESULT STDMETHODCALLTYPE CreatePixelShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11PixelShader** ppPixelShader) final; - HRESULT CreateHullShader( + HRESULT STDMETHODCALLTYPE CreateHullShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11HullShader** ppHullShader) final; - HRESULT CreateDomainShader( + HRESULT STDMETHODCALLTYPE CreateDomainShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11DomainShader** ppDomainShader) final; - HRESULT CreateComputeShader( + HRESULT STDMETHODCALLTYPE CreateComputeShader( const void* pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage* pClassLinkage, ID3D11ComputeShader** ppComputeShader) final; - HRESULT CreateClassLinkage( + HRESULT STDMETHODCALLTYPE CreateClassLinkage( ID3D11ClassLinkage** ppLinkage) final; - HRESULT CreateBlendState( + HRESULT STDMETHODCALLTYPE CreateBlendState( const D3D11_BLEND_DESC* pBlendStateDesc, ID3D11BlendState** ppBlendState) final; - HRESULT CreateDepthStencilState( + HRESULT STDMETHODCALLTYPE CreateDepthStencilState( const D3D11_DEPTH_STENCIL_DESC* pDepthStencilDesc, ID3D11DepthStencilState** ppDepthStencilState) final; - HRESULT CreateRasterizerState( + HRESULT STDMETHODCALLTYPE CreateRasterizerState( const D3D11_RASTERIZER_DESC* pRasterizerDesc, ID3D11RasterizerState** ppRasterizerState) final; - HRESULT CreateSamplerState( + HRESULT STDMETHODCALLTYPE CreateSamplerState( const D3D11_SAMPLER_DESC* pSamplerDesc, ID3D11SamplerState** ppSamplerState) final; - HRESULT CreateQuery( + HRESULT STDMETHODCALLTYPE CreateQuery( const D3D11_QUERY_DESC* pQueryDesc, ID3D11Query** ppQuery) final; - HRESULT CreatePredicate( + HRESULT STDMETHODCALLTYPE CreatePredicate( const D3D11_QUERY_DESC* pPredicateDesc, ID3D11Predicate** ppPredicate) final; - HRESULT CreateCounter( + HRESULT STDMETHODCALLTYPE CreateCounter( const D3D11_COUNTER_DESC* pCounterDesc, ID3D11Counter** ppCounter) final; - HRESULT CreateDeferredContext( + HRESULT STDMETHODCALLTYPE CreateDeferredContext( UINT ContextFlags, ID3D11DeviceContext** ppDeferredContext) final; - HRESULT OpenSharedResource( + HRESULT STDMETHODCALLTYPE OpenSharedResource( HANDLE hResource, REFIID ReturnedInterface, void** ppResource) final; - HRESULT CheckFormatSupport( + HRESULT STDMETHODCALLTYPE CheckFormatSupport( DXGI_FORMAT Format, UINT* pFormatSupport) final; - HRESULT CheckMultisampleQualityLevels( + HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels( DXGI_FORMAT Format, UINT SampleCount, UINT* pNumQualityLevels) final; - void CheckCounterInfo( + void STDMETHODCALLTYPE CheckCounterInfo( D3D11_COUNTER_INFO* pCounterInfo) final; - HRESULT CheckCounter( + HRESULT STDMETHODCALLTYPE CheckCounter( const D3D11_COUNTER_DESC* pDesc, D3D11_COUNTER_TYPE* pType, UINT* pActiveCounters, @@ -186,37 +186,37 @@ namespace dxvk { LPSTR szDescription, UINT* pDescriptionLength) final; - HRESULT CheckFeatureSupport( + HRESULT STDMETHODCALLTYPE CheckFeatureSupport( D3D11_FEATURE Feature, void* pFeatureSupportData, UINT FeatureSupportDataSize) final; - HRESULT GetPrivateData( + HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID Name, UINT *pDataSize, void *pData) final; - HRESULT SetPrivateData( + HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID Name, UINT DataSize, const void *pData) final; - HRESULT SetPrivateDataInterface( + HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID Name, const IUnknown *pUnknown) final; - D3D_FEATURE_LEVEL GetFeatureLevel() final; + D3D_FEATURE_LEVEL STDMETHODCALLTYPE GetFeatureLevel() final; - UINT GetCreationFlags() final; + UINT STDMETHODCALLTYPE GetCreationFlags() final; - HRESULT GetDeviceRemovedReason() final; + HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason() final; - void GetImmediateContext( + void STDMETHODCALLTYPE GetImmediateContext( ID3D11DeviceContext** ppImmediateContext) final; - HRESULT SetExceptionMode(UINT RaiseFlags) final; + HRESULT STDMETHODCALLTYPE SetExceptionMode(UINT RaiseFlags) final; - UINT GetExceptionMode() final; + UINT STDMETHODCALLTYPE GetExceptionMode() final; Rc GetDXVKDevice() { return m_dxvkDevice; diff --git a/src/d3d11/d3d11_device_child.h b/src/d3d11/d3d11_device_child.h index 485b23a6..190b5afa 100644 --- a/src/d3d11/d3d11_device_child.h +++ b/src/d3d11/d3d11_device_child.h @@ -11,7 +11,7 @@ namespace dxvk { public: - HRESULT GetPrivateData( + HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *pDataSize, void *pData) final { @@ -19,7 +19,7 @@ namespace dxvk { guid, pDataSize, pData); } - HRESULT SetPrivateData( + HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT DataSize, const void *pData) final { @@ -27,7 +27,7 @@ namespace dxvk { guid, DataSize, pData); } - HRESULT SetPrivateDataInterface( + HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *pUnknown) final { return m_privateData.setInterface( diff --git a/src/d3d11/d3d11_input_layout.cpp b/src/d3d11/d3d11_input_layout.cpp index 4eac95e2..99809515 100644 --- a/src/d3d11/d3d11_input_layout.cpp +++ b/src/d3d11/d3d11_input_layout.cpp @@ -26,7 +26,7 @@ namespace dxvk { } - HRESULT D3D11InputLayout::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11InputLayout::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11InputLayout); @@ -36,7 +36,7 @@ namespace dxvk { } - void D3D11InputLayout::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11InputLayout::GetDevice(ID3D11Device** ppDevice) { *ppDevice = m_device.ref(); } diff --git a/src/d3d11/d3d11_input_layout.h b/src/d3d11/d3d11_input_layout.h index 038027c1..cfe068d3 100644 --- a/src/d3d11/d3d11_input_layout.h +++ b/src/d3d11/d3d11_input_layout.h @@ -19,11 +19,11 @@ namespace dxvk { ~D3D11InputLayout(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; void BindToContext( diff --git a/src/d3d11/d3d11_main.cpp b/src/d3d11/d3d11_main.cpp index 77aa77c4..d62a84d8 100644 --- a/src/d3d11/d3d11_main.cpp +++ b/src/d3d11/d3d11_main.cpp @@ -1,7 +1,7 @@ #include -#include -#include +#include "../dxgi/dxgi_adapter.h" +#include "../dxgi/dxgi_device.h" #include "d3d11_device.h" #include "d3d11_enums.h" diff --git a/src/d3d11/d3d11_present.cpp b/src/d3d11/d3d11_present.cpp index 107e2928..81bba6fb 100644 --- a/src/d3d11/d3d11_present.cpp +++ b/src/d3d11/d3d11_present.cpp @@ -8,7 +8,7 @@ namespace dxvk { D3D11PresentDevice::~D3D11PresentDevice() { } - HRESULT D3D11PresentDevice::QueryInterface( + HRESULT STDMETHODCALLTYPE D3D11PresentDevice::QueryInterface( REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); @@ -17,7 +17,7 @@ namespace dxvk { } - HRESULT D3D11PresentDevice::WrapSwapChainBackBuffer( + HRESULT STDMETHODCALLTYPE D3D11PresentDevice::WrapSwapChainBackBuffer( IDXGIImageResourcePrivate* pResource, const DXGI_SWAP_CHAIN_DESC* pSwapChainDesc, IUnknown** ppInterface) { @@ -40,7 +40,7 @@ namespace dxvk { } - HRESULT D3D11PresentDevice::FlushRenderingCommands() { + HRESULT STDMETHODCALLTYPE D3D11PresentDevice::FlushRenderingCommands() { Com deviceContext = nullptr; m_device->GetImmediateContext(&deviceContext); @@ -49,7 +49,7 @@ namespace dxvk { } - HRESULT D3D11PresentDevice::GetDevice(REFGUID riid, void** ppvDevice) { + HRESULT STDMETHODCALLTYPE D3D11PresentDevice::GetDevice(REFGUID riid, void** ppvDevice) { return m_device->QueryInterface(riid, ppvDevice); } diff --git a/src/d3d11/d3d11_present.h b/src/d3d11/d3d11_present.h index 70c9ad36..8b3ca333 100644 --- a/src/d3d11/d3d11_present.h +++ b/src/d3d11/d3d11_present.h @@ -1,12 +1,11 @@ #pragma once -#include - -#include "d3d11_include.h" - +#include "../dxgi/dxgi_device.h" #include "../dxgi/dxgi_interfaces.h" #include "../dxgi/dxgi_resource.h" +#include "d3d11_include.h" + namespace dxvk { class D3D11Device; @@ -18,18 +17,18 @@ namespace dxvk { D3D11PresentDevice(); ~D3D11PresentDevice(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - HRESULT WrapSwapChainBackBuffer( + HRESULT STDMETHODCALLTYPE WrapSwapChainBackBuffer( IDXGIImageResourcePrivate* pResource, const DXGI_SWAP_CHAIN_DESC* pSwapChainDesc, IUnknown** ppInterface) final; - HRESULT FlushRenderingCommands() final; + HRESULT STDMETHODCALLTYPE FlushRenderingCommands() final; - HRESULT GetDevice( + HRESULT STDMETHODCALLTYPE GetDevice( REFGUID riid, void** ppvDevice) final; diff --git a/src/d3d11/d3d11_rasterizer.cpp b/src/d3d11/d3d11_rasterizer.cpp index 8ee2b493..3167ac5d 100644 --- a/src/d3d11/d3d11_rasterizer.cpp +++ b/src/d3d11/d3d11_rasterizer.cpp @@ -67,7 +67,7 @@ namespace dxvk { } - HRESULT D3D11RasterizerState::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11RasterizerState::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11RasterizerState); @@ -77,12 +77,12 @@ namespace dxvk { } - void D3D11RasterizerState::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11RasterizerState::GetDevice(ID3D11Device** ppDevice) { *ppDevice = ref(m_device); } - void D3D11RasterizerState::GetDesc(D3D11_RASTERIZER_DESC* pDesc) { + void STDMETHODCALLTYPE D3D11RasterizerState::GetDesc(D3D11_RASTERIZER_DESC* pDesc) { *pDesc = m_desc; } diff --git a/src/d3d11/d3d11_rasterizer.h b/src/d3d11/d3d11_rasterizer.h index a050fe45..9538bc57 100644 --- a/src/d3d11/d3d11_rasterizer.h +++ b/src/d3d11/d3d11_rasterizer.h @@ -19,14 +19,14 @@ namespace dxvk { const D3D11_RASTERIZER_DESC& desc); ~D3D11RasterizerState(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - void GetDesc( + void STDMETHODCALLTYPE GetDesc( D3D11_RASTERIZER_DESC* pDesc) final; void BindToContext( diff --git a/src/d3d11/d3d11_sampler.cpp b/src/d3d11/d3d11_sampler.cpp index 2e216f81..2e133b21 100644 --- a/src/d3d11/d3d11_sampler.cpp +++ b/src/d3d11/d3d11_sampler.cpp @@ -19,7 +19,7 @@ namespace dxvk { } - HRESULT D3D11SamplerState::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11SamplerState::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11SamplerState); @@ -29,12 +29,12 @@ namespace dxvk { } - void D3D11SamplerState::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11SamplerState::GetDevice(ID3D11Device** ppDevice) { *ppDevice = m_device.ref(); } - void D3D11SamplerState::GetDesc(D3D11_SAMPLER_DESC* pDesc) { + void STDMETHODCALLTYPE D3D11SamplerState::GetDesc(D3D11_SAMPLER_DESC* pDesc) { *pDesc = m_desc; } diff --git a/src/d3d11/d3d11_sampler.h b/src/d3d11/d3d11_sampler.h index aab44390..fcc0d4d5 100644 --- a/src/d3d11/d3d11_sampler.h +++ b/src/d3d11/d3d11_sampler.h @@ -18,14 +18,14 @@ namespace dxvk { const Rc& sampler); ~D3D11SamplerState(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - void GetDesc( + void STDMETHODCALLTYPE GetDesc( D3D11_SAMPLER_DESC* pDesc) final; Rc GetDXVKSampler() const { diff --git a/src/d3d11/d3d11_shader.h b/src/d3d11/d3d11_shader.h index 7b80464e..92a4a430 100644 --- a/src/d3d11/d3d11_shader.h +++ b/src/d3d11/d3d11_shader.h @@ -66,7 +66,7 @@ namespace dxvk { ~D3D11Shader() { } - HRESULT QueryInterface(REFIID riid, void** ppvObject) final { + HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject) final { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, Base); @@ -75,11 +75,11 @@ namespace dxvk { return E_NOINTERFACE; } - void GetDevice(ID3D11Device **ppDevice) final { + void STDMETHODCALLTYPE GetDevice(ID3D11Device **ppDevice) final { *ppDevice = m_device.ref(); } - Rc GetShader() const { + Rc STDMETHODCALLTYPE GetShader() const { return m_module.GetShader(); } diff --git a/src/d3d11/d3d11_texture.cpp b/src/d3d11/d3d11_texture.cpp index a33250ff..59a9c669 100644 --- a/src/d3d11/d3d11_texture.cpp +++ b/src/d3d11/d3d11_texture.cpp @@ -19,7 +19,7 @@ namespace dxvk { } - HRESULT D3D11Texture2D::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE D3D11Texture2D::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11Resource); @@ -34,29 +34,29 @@ namespace dxvk { } - void D3D11Texture2D::GetDevice(ID3D11Device** ppDevice) { + void STDMETHODCALLTYPE D3D11Texture2D::GetDevice(ID3D11Device** ppDevice) { *ppDevice = m_device.ref(); } - void D3D11Texture2D::GetType(D3D11_RESOURCE_DIMENSION *pResourceDimension) { + void STDMETHODCALLTYPE D3D11Texture2D::GetType(D3D11_RESOURCE_DIMENSION *pResourceDimension) { *pResourceDimension = D3D11_RESOURCE_DIMENSION_TEXTURE2D; } - UINT D3D11Texture2D::GetEvictionPriority() { + UINT STDMETHODCALLTYPE D3D11Texture2D::GetEvictionPriority() { UINT EvictionPriority = DXGI_RESOURCE_PRIORITY_NORMAL; m_resource->GetEvictionPriority(&EvictionPriority); return EvictionPriority; } - void D3D11Texture2D::SetEvictionPriority(UINT EvictionPriority) { + void STDMETHODCALLTYPE D3D11Texture2D::SetEvictionPriority(UINT EvictionPriority) { m_resource->SetEvictionPriority(EvictionPriority); } - void D3D11Texture2D::GetDesc(D3D11_TEXTURE2D_DESC *pDesc) { + void STDMETHODCALLTYPE D3D11Texture2D::GetDesc(D3D11_TEXTURE2D_DESC *pDesc) { *pDesc = m_desc; } diff --git a/src/d3d11/d3d11_texture.h b/src/d3d11/d3d11_texture.h index 623542a8..9f5b3514 100644 --- a/src/d3d11/d3d11_texture.h +++ b/src/d3d11/d3d11_texture.h @@ -20,21 +20,21 @@ namespace dxvk { const D3D11_TEXTURE2D_DESC& desc); ~D3D11Texture2D(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - void GetDevice( + void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) final; - void GetType( + void STDMETHODCALLTYPE GetType( D3D11_RESOURCE_DIMENSION *pResourceDimension) final; - UINT GetEvictionPriority() final; + UINT STDMETHODCALLTYPE GetEvictionPriority() final; - void SetEvictionPriority(UINT EvictionPriority) final; + void STDMETHODCALLTYPE SetEvictionPriority(UINT EvictionPriority) final; - void GetDesc( + void STDMETHODCALLTYPE GetDesc( D3D11_TEXTURE2D_DESC *pDesc) final; Rc GetDXVKImage(); diff --git a/src/d3d11/d3d11_view.h b/src/d3d11/d3d11_view.h index c9a6ca7a..4364a0ad 100644 --- a/src/d3d11/d3d11_view.h +++ b/src/d3d11/d3d11_view.h @@ -31,7 +31,7 @@ namespace dxvk { : m_device(device), m_resource(resource), m_desc(desc), m_bufferView(bufferView), m_imageView(imageView) { } - HRESULT QueryInterface(REFIID riid, void** ppvObject) final { + HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppvObject) final { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, ID3D11DeviceChild); COM_QUERY_IFACE(riid, ppvObject, ID3D11View); @@ -41,15 +41,15 @@ namespace dxvk { return E_NOINTERFACE; } - void GetDevice(ID3D11Device** ppDevice) final { + void STDMETHODCALLTYPE GetDevice(ID3D11Device** ppDevice) final { *ppDevice = m_device.ref(); } - void GetResource(ID3D11Resource** ppResource) final { + void STDMETHODCALLTYPE GetResource(ID3D11Resource** ppResource) final { *ppResource = m_resource.ref(); } - void GetDesc(DescType* pDesc) final { + void STDMETHODCALLTYPE GetDesc(DescType* pDesc) final { *pDesc = m_desc; } diff --git a/src/dxgi/dxgi_adapter.cpp b/src/dxgi/dxgi_adapter.cpp index d9e6c686..64fa10ec 100644 --- a/src/dxgi/dxgi_adapter.cpp +++ b/src/dxgi/dxgi_adapter.cpp @@ -24,7 +24,7 @@ namespace dxvk { } - HRESULT DxgiAdapter::QueryInterface( + HRESULT STDMETHODCALLTYPE DxgiAdapter::QueryInterface( REFIID riid, void **ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); @@ -38,14 +38,14 @@ namespace dxvk { } - HRESULT DxgiAdapter::GetParent( + HRESULT STDMETHODCALLTYPE DxgiAdapter::GetParent( REFIID riid, void **ppParent) { return m_factory->QueryInterface(riid, ppParent); } - HRESULT DxgiAdapter::CheckInterfaceSupport( + HRESULT STDMETHODCALLTYPE DxgiAdapter::CheckInterfaceSupport( REFGUID InterfaceName, LARGE_INTEGER *pUMDVersion) { Logger::err("DxgiAdapter::CheckInterfaceSupport: No D3D10 support"); @@ -53,7 +53,7 @@ namespace dxvk { } - HRESULT DxgiAdapter::EnumOutputs( + HRESULT STDMETHODCALLTYPE DxgiAdapter::EnumOutputs( UINT Output, IDXGIOutput **ppOutput) { if (ppOutput == nullptr) @@ -74,7 +74,7 @@ namespace dxvk { } - HRESULT DxgiAdapter::GetDesc(DXGI_ADAPTER_DESC* pDesc) { + HRESULT STDMETHODCALLTYPE DxgiAdapter::GetDesc(DXGI_ADAPTER_DESC* pDesc) { DXGI_ADAPTER_DESC1 desc1; HRESULT hr = this->GetDesc1(&desc1); @@ -98,7 +98,7 @@ namespace dxvk { } - HRESULT DxgiAdapter::GetDesc1(DXGI_ADAPTER_DESC1* pDesc) { + HRESULT STDMETHODCALLTYPE DxgiAdapter::GetDesc1(DXGI_ADAPTER_DESC1* pDesc) { if (pDesc == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -133,12 +133,12 @@ namespace dxvk { } - Rc DxgiAdapter::GetDXVKAdapter() { + Rc STDMETHODCALLTYPE DxgiAdapter::GetDXVKAdapter() { return m_adapter; } - DxgiFormatPair DxgiAdapter::LookupFormat(DXGI_FORMAT format) { + DxgiFormatPair STDMETHODCALLTYPE DxgiAdapter::LookupFormat(DXGI_FORMAT format) { auto pair = m_formats.find(format); return pair != m_formats.end() diff --git a/src/dxgi/dxgi_adapter.h b/src/dxgi/dxgi_adapter.h index be61708c..242ad933 100644 --- a/src/dxgi/dxgi_adapter.h +++ b/src/dxgi/dxgi_adapter.h @@ -24,31 +24,31 @@ namespace dxvk { const Rc& adapter); ~DxgiAdapter(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void **ppParent) final; - HRESULT CheckInterfaceSupport( + HRESULT STDMETHODCALLTYPE CheckInterfaceSupport( REFGUID InterfaceName, LARGE_INTEGER *pUMDVersion) final; - HRESULT EnumOutputs( + HRESULT STDMETHODCALLTYPE EnumOutputs( UINT Output, IDXGIOutput **ppOutput) final; - HRESULT GetDesc( + HRESULT STDMETHODCALLTYPE GetDesc( DXGI_ADAPTER_DESC *pDesc) final; - HRESULT GetDesc1( + HRESULT STDMETHODCALLTYPE GetDesc1( DXGI_ADAPTER_DESC1 *pDesc) final; - Rc GetDXVKAdapter() final; + Rc STDMETHODCALLTYPE GetDXVKAdapter() final; - DxgiFormatPair LookupFormat( + DxgiFormatPair STDMETHODCALLTYPE LookupFormat( DXGI_FORMAT format) final; private: diff --git a/src/dxgi/dxgi_device.cpp b/src/dxgi/dxgi_device.cpp index 77a1680e..173fc2d5 100644 --- a/src/dxgi/dxgi_device.cpp +++ b/src/dxgi/dxgi_device.cpp @@ -16,7 +16,7 @@ namespace dxvk { } - HRESULT DxgiDevice::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE DxgiDevice::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, IDXGIObject); COM_QUERY_IFACE(riid, ppvObject, IDXGIDevice); @@ -31,12 +31,12 @@ namespace dxvk { } - HRESULT DxgiDevice::GetParent(REFIID riid, void** ppParent) { + HRESULT STDMETHODCALLTYPE DxgiDevice::GetParent(REFIID riid, void** ppParent) { return m_adapter->QueryInterface(riid, ppParent); } - HRESULT DxgiDevice::CreateSurface( + HRESULT STDMETHODCALLTYPE DxgiDevice::CreateSurface( const DXGI_SURFACE_DESC* pDesc, UINT NumSurfaces, DXGI_USAGE Usage, @@ -47,21 +47,21 @@ namespace dxvk { } - HRESULT DxgiDevice::GetAdapter( + HRESULT STDMETHODCALLTYPE DxgiDevice::GetAdapter( IDXGIAdapter** pAdapter) { *pAdapter = static_cast(m_adapter.ref()); return S_OK; } - HRESULT DxgiDevice::GetGPUThreadPriority( + HRESULT STDMETHODCALLTYPE DxgiDevice::GetGPUThreadPriority( INT* pPriority) { *pPriority = 0; return S_OK; } - HRESULT DxgiDevice::QueryResourceResidency( + HRESULT STDMETHODCALLTYPE DxgiDevice::QueryResourceResidency( IUnknown* const* ppResources, DXGI_RESIDENCY* pResidencyStatus, UINT NumResources) { @@ -70,7 +70,7 @@ namespace dxvk { } - HRESULT DxgiDevice::SetGPUThreadPriority( + HRESULT STDMETHODCALLTYPE DxgiDevice::SetGPUThreadPriority( INT Priority) { if (Priority < -7 || Priority > 7) return E_INVALIDARG; @@ -80,7 +80,7 @@ namespace dxvk { } - HRESULT DxgiDevice::GetMaximumFrameLatency( + HRESULT STDMETHODCALLTYPE DxgiDevice::GetMaximumFrameLatency( UINT* pMaxLatency) { Logger::warn("DxgiDevice::GetMaximumFrameLatency: Stub"); *pMaxLatency = 1; @@ -88,19 +88,19 @@ namespace dxvk { } - HRESULT DxgiDevice::SetMaximumFrameLatency( + HRESULT STDMETHODCALLTYPE DxgiDevice::SetMaximumFrameLatency( UINT MaxLatency) { Logger::warn("DxgiDevice::SetMaximumFrameLatency: Stub"); return S_OK; } - void DxgiDevice::SetDeviceLayer(IUnknown* layer) { + void STDMETHODCALLTYPE DxgiDevice::SetDeviceLayer(IUnknown* layer) { m_layer = layer; } - Rc DxgiDevice::GetDXVKDevice() { + Rc STDMETHODCALLTYPE DxgiDevice::GetDXVKDevice() { return m_device; } diff --git a/src/dxgi/dxgi_device.h b/src/dxgi/dxgi_device.h index be8e798e..41b1a6b4 100644 --- a/src/dxgi/dxgi_device.h +++ b/src/dxgi/dxgi_device.h @@ -18,45 +18,45 @@ namespace dxvk { const VkPhysicalDeviceFeatures* features); ~DxgiDevice(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void **ppParent) final; - HRESULT CreateSurface( + HRESULT STDMETHODCALLTYPE CreateSurface( const DXGI_SURFACE_DESC* pDesc, UINT NumSurfaces, DXGI_USAGE Usage, const DXGI_SHARED_RESOURCE* pSharedResource, IDXGISurface** ppSurface) final; - HRESULT GetAdapter( + HRESULT STDMETHODCALLTYPE GetAdapter( IDXGIAdapter** pAdapter) final; - HRESULT GetGPUThreadPriority( + HRESULT STDMETHODCALLTYPE GetGPUThreadPriority( INT* pPriority) final; - HRESULT QueryResourceResidency( + HRESULT STDMETHODCALLTYPE QueryResourceResidency( IUnknown* const* ppResources, DXGI_RESIDENCY* pResidencyStatus, UINT NumResources) final; - HRESULT SetGPUThreadPriority( + HRESULT STDMETHODCALLTYPE SetGPUThreadPriority( INT Priority) final; - HRESULT GetMaximumFrameLatency( + HRESULT STDMETHODCALLTYPE GetMaximumFrameLatency( UINT* pMaxLatency) final; - HRESULT SetMaximumFrameLatency( + HRESULT STDMETHODCALLTYPE SetMaximumFrameLatency( UINT MaxLatency) final; - void SetDeviceLayer( + void STDMETHODCALLTYPE SetDeviceLayer( IUnknown* layer) final; - Rc GetDXVKDevice() final; + Rc STDMETHODCALLTYPE GetDXVKDevice() final; private: diff --git a/src/dxgi/dxgi_factory.cpp b/src/dxgi/dxgi_factory.cpp index 77f6fff8..54bc6e6a 100644 --- a/src/dxgi/dxgi_factory.cpp +++ b/src/dxgi/dxgi_factory.cpp @@ -15,7 +15,7 @@ namespace dxvk { } - HRESULT DxgiFactory::QueryInterface( + HRESULT STDMETHODCALLTYPE DxgiFactory::QueryInterface( REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); @@ -28,7 +28,7 @@ namespace dxvk { } - HRESULT DxgiFactory::GetParent( + HRESULT STDMETHODCALLTYPE DxgiFactory::GetParent( REFIID riid, void** ppParent) { Logger::warn("DxgiFactory::GetParent: Unknown interface query"); @@ -36,7 +36,7 @@ namespace dxvk { } - HRESULT DxgiFactory::CreateSoftwareAdapter( + HRESULT STDMETHODCALLTYPE DxgiFactory::CreateSoftwareAdapter( HMODULE Module, IDXGIAdapter** ppAdapter) { Logger::err("DxgiFactory::CreateSoftwareAdapter: Software adapters not supported"); @@ -44,7 +44,7 @@ namespace dxvk { } - HRESULT DxgiFactory::CreateSwapChain( + HRESULT STDMETHODCALLTYPE DxgiFactory::CreateSwapChain( IUnknown* pDevice, DXGI_SWAP_CHAIN_DESC* pDesc, IDXGISwapChain** ppSwapChain) { @@ -61,7 +61,7 @@ namespace dxvk { } - HRESULT DxgiFactory::EnumAdapters( + HRESULT STDMETHODCALLTYPE DxgiFactory::EnumAdapters( UINT Adapter, IDXGIAdapter** ppAdapter) { if (ppAdapter == nullptr) @@ -75,7 +75,7 @@ namespace dxvk { } - HRESULT DxgiFactory::EnumAdapters1( + HRESULT STDMETHODCALLTYPE DxgiFactory::EnumAdapters1( UINT Adapter, IDXGIAdapter1** ppAdapter) { if (ppAdapter == nullptr) @@ -90,7 +90,7 @@ namespace dxvk { } - HRESULT DxgiFactory::GetWindowAssociation(HWND *pWindowHandle) { + HRESULT STDMETHODCALLTYPE DxgiFactory::GetWindowAssociation(HWND *pWindowHandle) { if (pWindowHandle == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -99,14 +99,14 @@ namespace dxvk { } - HRESULT DxgiFactory::MakeWindowAssociation(HWND WindowHandle, UINT Flags) { + HRESULT STDMETHODCALLTYPE DxgiFactory::MakeWindowAssociation(HWND WindowHandle, UINT Flags) { Logger::warn("DxgiFactory::MakeWindowAssociation: Ignoring flags"); m_associatedWindow = WindowHandle; return S_OK; } - BOOL DxgiFactory::IsCurrent() { + BOOL STDMETHODCALLTYPE DxgiFactory::IsCurrent() { Logger::warn("DxgiFactory::IsCurrent: Stub"); return TRUE; } diff --git a/src/dxgi/dxgi_factory.h b/src/dxgi/dxgi_factory.h index f72920a7..b0fc4d94 100644 --- a/src/dxgi/dxgi_factory.h +++ b/src/dxgi/dxgi_factory.h @@ -15,39 +15,39 @@ namespace dxvk { DxgiFactory(); ~DxgiFactory(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void** ppParent) final; - HRESULT CreateSoftwareAdapter( + HRESULT STDMETHODCALLTYPE CreateSoftwareAdapter( HMODULE Module, IDXGIAdapter** ppAdapter) final; - HRESULT CreateSwapChain( + HRESULT STDMETHODCALLTYPE CreateSwapChain( IUnknown* pDevice, DXGI_SWAP_CHAIN_DESC* pDesc, IDXGISwapChain** ppSwapChain) final; - HRESULT EnumAdapters( + HRESULT STDMETHODCALLTYPE EnumAdapters( UINT Adapter, IDXGIAdapter** ppAdapter) final; - HRESULT EnumAdapters1( + HRESULT STDMETHODCALLTYPE EnumAdapters1( UINT Adapter, IDXGIAdapter1** ppAdapter) final; - HRESULT GetWindowAssociation( + HRESULT STDMETHODCALLTYPE GetWindowAssociation( HWND *pWindowHandle) final; - HRESULT MakeWindowAssociation( + HRESULT STDMETHODCALLTYPE MakeWindowAssociation( HWND WindowHandle, UINT Flags) final; - BOOL IsCurrent(); + BOOL STDMETHODCALLTYPE IsCurrent(); private: diff --git a/src/dxgi/dxgi_interfaces.h b/src/dxgi/dxgi_interfaces.h index c527aa22..9bdc0d81 100644 --- a/src/dxgi/dxgi_interfaces.h +++ b/src/dxgi/dxgi_interfaces.h @@ -37,9 +37,9 @@ MIDL_INTERFACE("907bf281-ea3c-43b4-a8e4-9f231107b4ff") IDXGIAdapterPrivate : public IDXGIAdapter1 { static const GUID guid; - virtual dxvk::Rc GetDXVKAdapter() = 0; + virtual dxvk::Rc STDMETHODCALLTYPE GetDXVKAdapter() = 0; - virtual dxvk::DxgiFormatPair LookupFormat( + virtual dxvk::DxgiFormatPair STDMETHODCALLTYPE LookupFormat( DXGI_FORMAT format) = 0; }; @@ -55,10 +55,10 @@ MIDL_INTERFACE("7a622cf6-627a-46b2-b52f-360ef3da831c") IDXGIDevicePrivate : public IDXGIDevice1 { static const GUID guid; - virtual void SetDeviceLayer( + virtual void STDMETHODCALLTYPE SetDeviceLayer( IUnknown* layer) = 0; - virtual dxvk::Rc GetDXVKDevice() = 0; + virtual dxvk::Rc STDMETHODCALLTYPE GetDXVKDevice() = 0; }; @@ -70,9 +70,9 @@ MIDL_INTERFACE("5679becd-8547-4d93-96a1-e61a1ce7ef37") IDXGIBufferResourcePrivate : public IDXGIResource { static const GUID guid; - virtual dxvk::Rc GetDXVKBuffer() = 0; + virtual dxvk::Rc STDMETHODCALLTYPE GetDXVKBuffer() = 0; - virtual void SetResourceLayer( + virtual void STDMETHODCALLTYPE SetResourceLayer( IUnknown* pLayer) = 0; }; @@ -85,9 +85,9 @@ MIDL_INTERFACE("1cfe6592-7de0-4a07-8dcb-4543cbbc6a7d") IDXGIImageResourcePrivate : public IDXGIResource { static const GUID guid; - virtual dxvk::Rc GetDXVKImage() = 0; + virtual dxvk::Rc STDMETHODCALLTYPE GetDXVKImage() = 0; - virtual void SetResourceLayer( + virtual void STDMETHODCALLTYPE SetResourceLayer( IUnknown* pLayer) = 0; }; @@ -114,7 +114,7 @@ IDXGIPresentDevicePrivate : public IUnknown { * \param [in] ppInterface Target interface * \returns \c S_OK on success */ - virtual HRESULT WrapSwapChainBackBuffer( + virtual HRESULT STDMETHODCALLTYPE WrapSwapChainBackBuffer( IDXGIImageResourcePrivate* pResource, const DXGI_SWAP_CHAIN_DESC* pSwapChainDesc, IUnknown** ppInterface) = 0; @@ -127,7 +127,7 @@ IDXGIPresentDevicePrivate : public IUnknown { * before presenting the swap chain's back buffer. * \returns \c S_OK on success */ - virtual HRESULT FlushRenderingCommands() = 0; + virtual HRESULT STDMETHODCALLTYPE FlushRenderingCommands() = 0; /** * \brief Underlying DXVK device @@ -136,7 +136,7 @@ IDXGIPresentDevicePrivate : public IUnknown { * \param [in] ppDevice device * \returns DXVK device handle */ - virtual HRESULT GetDevice( + virtual HRESULT STDMETHODCALLTYPE GetDevice( REFGUID riid, void** ppDevice) = 0; }; diff --git a/src/dxgi/dxgi_object.h b/src/dxgi/dxgi_object.h index c51b58ad..d837e363 100644 --- a/src/dxgi/dxgi_object.h +++ b/src/dxgi/dxgi_object.h @@ -11,7 +11,7 @@ namespace dxvk { public: - HRESULT GetPrivateData( + HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID Name, UINT *pDataSize, void *pData) final { @@ -19,7 +19,7 @@ namespace dxvk { Name, pDataSize, pData); } - HRESULT SetPrivateData( + HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID Name, UINT DataSize, const void *pData) final { @@ -27,7 +27,7 @@ namespace dxvk { Name, DataSize, pData); } - HRESULT SetPrivateDataInterface( + HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID Name, const IUnknown *pUnknown) final { return m_privateData.setInterface( diff --git a/src/dxgi/dxgi_output.cpp b/src/dxgi/dxgi_output.cpp index cfd52689..545ad657 100644 --- a/src/dxgi/dxgi_output.cpp +++ b/src/dxgi/dxgi_output.cpp @@ -23,7 +23,7 @@ namespace dxvk { } - HRESULT DxgiOutput::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE DxgiOutput::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, IDXGIObject); COM_QUERY_IFACE(riid, ppvObject, IDXGIOutput); @@ -33,14 +33,14 @@ namespace dxvk { } - HRESULT DxgiOutput::GetParent( + HRESULT STDMETHODCALLTYPE DxgiOutput::GetParent( REFIID riid, void **ppParent) { return m_adapter->QueryInterface(riid, ppParent); } - HRESULT DxgiOutput::FindClosestMatchingMode( + HRESULT STDMETHODCALLTYPE DxgiOutput::FindClosestMatchingMode( const DXGI_MODE_DESC *pModeToMatch, DXGI_MODE_DESC *pClosestMatch, IUnknown *pConcernedDevice) { @@ -49,7 +49,7 @@ namespace dxvk { } - HRESULT DxgiOutput::GetDesc(DXGI_OUTPUT_DESC *pDesc) { + HRESULT STDMETHODCALLTYPE DxgiOutput::GetDesc(DXGI_OUTPUT_DESC *pDesc) { if (pDesc == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -85,7 +85,7 @@ namespace dxvk { } - HRESULT DxgiOutput::GetDisplayModeList( + HRESULT STDMETHODCALLTYPE DxgiOutput::GetDisplayModeList( DXGI_FORMAT EnumFormat, UINT Flags, UINT *pNumModes, @@ -185,48 +185,48 @@ namespace dxvk { } - HRESULT DxgiOutput::GetDisplaySurfaceData(IDXGISurface *pDestination) { + HRESULT STDMETHODCALLTYPE DxgiOutput::GetDisplaySurfaceData(IDXGISurface *pDestination) { Logger::err("DxgiOutput::GetDisplaySurfaceData: Not implemented"); return E_NOTIMPL; } - HRESULT DxgiOutput::GetFrameStatistics(DXGI_FRAME_STATISTICS *pStats) { + HRESULT STDMETHODCALLTYPE DxgiOutput::GetFrameStatistics(DXGI_FRAME_STATISTICS *pStats) { Logger::err("DxgiOutput::GetFrameStatistics: Not implemented"); return E_NOTIMPL; } - HRESULT DxgiOutput::GetGammaControl(DXGI_GAMMA_CONTROL *pArray) { + HRESULT STDMETHODCALLTYPE DxgiOutput::GetGammaControl(DXGI_GAMMA_CONTROL *pArray) { Logger::err("DxgiOutput::GetGammaControl: Not implemented"); return E_NOTIMPL; } - HRESULT DxgiOutput::GetGammaControlCapabilities(DXGI_GAMMA_CONTROL_CAPABILITIES *pGammaCaps) { + HRESULT STDMETHODCALLTYPE DxgiOutput::GetGammaControlCapabilities(DXGI_GAMMA_CONTROL_CAPABILITIES *pGammaCaps) { Logger::err("DxgiOutput::GetGammaControlCapabilities: Not implemented"); return E_NOTIMPL; } - void DxgiOutput::ReleaseOwnership() { + void STDMETHODCALLTYPE DxgiOutput::ReleaseOwnership() { Logger::warn("DxgiOutput::ReleaseOwnership: Stub"); } - HRESULT DxgiOutput::SetDisplaySurface(IDXGISurface *pScanoutSurface) { + HRESULT STDMETHODCALLTYPE DxgiOutput::SetDisplaySurface(IDXGISurface *pScanoutSurface) { Logger::err("DxgiOutput::SetDisplaySurface: Not implemented"); return E_NOTIMPL; } - HRESULT DxgiOutput::SetGammaControl(const DXGI_GAMMA_CONTROL *pArray) { + HRESULT STDMETHODCALLTYPE DxgiOutput::SetGammaControl(const DXGI_GAMMA_CONTROL *pArray) { Logger::err("DxgiOutput::SetGammaControl: Not implemented"); return E_NOTIMPL; } - HRESULT DxgiOutput::TakeOwnership( + HRESULT STDMETHODCALLTYPE DxgiOutput::TakeOwnership( IUnknown *pDevice, BOOL Exclusive) { Logger::warn("DxgiOutput::TakeOwnership: Stub"); @@ -234,7 +234,7 @@ namespace dxvk { } - HRESULT DxgiOutput::WaitForVBlank() { + HRESULT STDMETHODCALLTYPE DxgiOutput::WaitForVBlank() { Logger::warn("DxgiOutput::WaitForVBlank: Stub"); return S_OK; } diff --git a/src/dxgi/dxgi_output.h b/src/dxgi/dxgi_output.h index e92a96f5..d30ea768 100644 --- a/src/dxgi/dxgi_output.h +++ b/src/dxgi/dxgi_output.h @@ -16,53 +16,53 @@ namespace dxvk { ~DxgiOutput(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void **ppParent) final; - HRESULT FindClosestMatchingMode( + HRESULT STDMETHODCALLTYPE FindClosestMatchingMode( const DXGI_MODE_DESC *pModeToMatch, DXGI_MODE_DESC *pClosestMatch, IUnknown *pConcernedDevice) final; - HRESULT GetDesc( + HRESULT STDMETHODCALLTYPE GetDesc( DXGI_OUTPUT_DESC *pDesc) final; - HRESULT GetDisplayModeList( + HRESULT STDMETHODCALLTYPE GetDisplayModeList( DXGI_FORMAT EnumFormat, UINT Flags, UINT *pNumModes, DXGI_MODE_DESC *pDesc) final; - HRESULT GetDisplaySurfaceData( + HRESULT STDMETHODCALLTYPE GetDisplaySurfaceData( IDXGISurface *pDestination) final; - HRESULT GetFrameStatistics( + HRESULT STDMETHODCALLTYPE GetFrameStatistics( DXGI_FRAME_STATISTICS *pStats) final; - HRESULT GetGammaControl( + HRESULT STDMETHODCALLTYPE GetGammaControl( DXGI_GAMMA_CONTROL *pArray) final; - HRESULT GetGammaControlCapabilities( + HRESULT STDMETHODCALLTYPE GetGammaControlCapabilities( DXGI_GAMMA_CONTROL_CAPABILITIES *pGammaCaps) final; - void ReleaseOwnership() final; + void STDMETHODCALLTYPE ReleaseOwnership() final; - HRESULT SetDisplaySurface( + HRESULT STDMETHODCALLTYPE SetDisplaySurface( IDXGISurface *pScanoutSurface) final; - HRESULT SetGammaControl( + HRESULT STDMETHODCALLTYPE SetGammaControl( const DXGI_GAMMA_CONTROL *pArray) final; - HRESULT TakeOwnership( + HRESULT STDMETHODCALLTYPE TakeOwnership( IUnknown *pDevice, BOOL Exclusive) final; - HRESULT WaitForVBlank() final; + HRESULT STDMETHODCALLTYPE WaitForVBlank() final; private: diff --git a/src/dxgi/dxgi_resource.cpp b/src/dxgi/dxgi_resource.cpp index 6525de70..e14eafc4 100644 --- a/src/dxgi/dxgi_resource.cpp +++ b/src/dxgi/dxgi_resource.cpp @@ -27,7 +27,7 @@ namespace dxvk { } - HRESULT DxgiImageResource::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE DxgiImageResource::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, IDXGIObject); COM_QUERY_IFACE(riid, ppvObject, IDXGIDeviceSubObject); @@ -42,18 +42,18 @@ namespace dxvk { } - HRESULT DxgiImageResource::GetParent(REFIID riid, void** ppParent) { + HRESULT STDMETHODCALLTYPE DxgiImageResource::GetParent(REFIID riid, void** ppParent) { Logger::err("DxgiImageResource::GetParent: Unknown interface query"); return E_NOINTERFACE; } - Rc DxgiImageResource::GetDXVKImage() { + Rc STDMETHODCALLTYPE DxgiImageResource::GetDXVKImage() { return m_image; } - void DxgiImageResource::SetResourceLayer(IUnknown* pLayer) { + void STDMETHODCALLTYPE DxgiImageResource::SetResourceLayer(IUnknown* pLayer) { m_layer = pLayer; } @@ -76,7 +76,7 @@ namespace dxvk { } - HRESULT DxgiBufferResource::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE DxgiBufferResource::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, IDXGIObject); COM_QUERY_IFACE(riid, ppvObject, IDXGIDeviceSubObject); @@ -91,18 +91,18 @@ namespace dxvk { } - HRESULT DxgiBufferResource::GetParent(REFIID riid, void** ppParent) { + HRESULT STDMETHODCALLTYPE DxgiBufferResource::GetParent(REFIID riid, void** ppParent) { Logger::err("DxgiBufferResource::GetParent: Unknown interface query"); return E_NOINTERFACE; } - Rc DxgiBufferResource::GetDXVKBuffer() { + Rc STDMETHODCALLTYPE DxgiBufferResource::GetDXVKBuffer() { return m_buffer; } - void DxgiBufferResource::SetResourceLayer(IUnknown* pLayer) { + void STDMETHODCALLTYPE DxgiBufferResource::SetResourceLayer(IUnknown* pLayer) { m_layer = pLayer; } diff --git a/src/dxgi/dxgi_resource.h b/src/dxgi/dxgi_resource.h index e67f5721..dc9087a0 100644 --- a/src/dxgi/dxgi_resource.h +++ b/src/dxgi/dxgi_resource.h @@ -18,7 +18,7 @@ namespace dxvk { : m_device (pDevice), m_usageFlags(usage) { } - HRESULT GetDevice(REFIID riid, void** ppDevice) { + HRESULT STDMETHODCALLTYPE GetDevice(REFIID riid, void** ppDevice) { return m_device->QueryInterface(riid, ppDevice); } @@ -81,17 +81,17 @@ namespace dxvk { ~DxgiImageResource(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void **ppParent) final; - Rc GetDXVKImage() final; + Rc STDMETHODCALLTYPE GetDXVKImage() final; - void SetResourceLayer( + void STDMETHODCALLTYPE SetResourceLayer( IUnknown* pLayer) final; private: @@ -120,17 +120,17 @@ namespace dxvk { ~DxgiBufferResource(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void **ppParent) final; - Rc GetDXVKBuffer() final; + Rc STDMETHODCALLTYPE GetDXVKBuffer() final; - void SetResourceLayer( + void STDMETHODCALLTYPE SetResourceLayer( IUnknown* pLayer) final; private: diff --git a/src/dxgi/dxgi_swapchain.cpp b/src/dxgi/dxgi_swapchain.cpp index 252dd868..a0ba3eed 100644 --- a/src/dxgi/dxgi_swapchain.cpp +++ b/src/dxgi/dxgi_swapchain.cpp @@ -70,7 +70,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::QueryInterface(REFIID riid, void** ppvObject) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::QueryInterface(REFIID riid, void** ppvObject) { COM_QUERY_IFACE(riid, ppvObject, IUnknown); COM_QUERY_IFACE(riid, ppvObject, IDXGIObject); COM_QUERY_IFACE(riid, ppvObject, IDXGIDeviceSubObject); @@ -81,17 +81,17 @@ namespace dxvk { } - HRESULT DxgiSwapChain::GetParent(REFIID riid, void** ppParent) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetParent(REFIID riid, void** ppParent) { return m_factory->QueryInterface(riid, ppParent); } - HRESULT DxgiSwapChain::GetDevice(REFIID riid, void** ppDevice) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetDevice(REFIID riid, void** ppDevice) { return m_device->QueryInterface(riid, ppDevice); } - HRESULT DxgiSwapChain::GetBuffer(UINT Buffer, REFIID riid, void** ppSurface) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetBuffer(UINT Buffer, REFIID riid, void** ppSurface) { std::lock_guard lock(m_mutex); if (Buffer > 0) { @@ -103,7 +103,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::GetContainingOutput(IDXGIOutput** ppOutput) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetContainingOutput(IDXGIOutput** ppOutput) { if (ppOutput != nullptr) return DXGI_ERROR_INVALID_CALL; @@ -122,7 +122,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::GetDesc(DXGI_SWAP_CHAIN_DESC* pDesc) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetDesc(DXGI_SWAP_CHAIN_DESC* pDesc) { if (pDesc == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -132,7 +132,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::GetFrameStatistics(DXGI_FRAME_STATISTICS* pStats) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetFrameStatistics(DXGI_FRAME_STATISTICS* pStats) { if (pStats == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -142,7 +142,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::GetFullscreenState( + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetFullscreenState( BOOL* pFullscreen, IDXGIOutput** ppTarget) { std::lock_guard lock(m_mutex); @@ -159,7 +159,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::GetLastPresentCount(UINT* pLastPresentCount) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::GetLastPresentCount(UINT* pLastPresentCount) { if (pLastPresentCount == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -169,7 +169,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::Present(UINT SyncInterval, UINT Flags) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::Present(UINT SyncInterval, UINT Flags) { std::lock_guard lock(m_mutex); try { @@ -188,7 +188,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::ResizeBuffers( + HRESULT STDMETHODCALLTYPE DxgiSwapChain::ResizeBuffers( UINT BufferCount, UINT Width, UINT Height, @@ -223,7 +223,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::ResizeTarget(const DXGI_MODE_DESC* pNewTargetParameters) { + HRESULT STDMETHODCALLTYPE DxgiSwapChain::ResizeTarget(const DXGI_MODE_DESC* pNewTargetParameters) { if (pNewTargetParameters == nullptr) return DXGI_ERROR_INVALID_CALL; @@ -265,7 +265,7 @@ namespace dxvk { } - HRESULT DxgiSwapChain::SetFullscreenState( + HRESULT STDMETHODCALLTYPE DxgiSwapChain::SetFullscreenState( BOOL Fullscreen, IDXGIOutput* pTarget) { std::lock_guard lock(m_mutex); diff --git a/src/dxgi/dxgi_swapchain.h b/src/dxgi/dxgi_swapchain.h index 7a642cd1..1dd632d8 100644 --- a/src/dxgi/dxgi_swapchain.h +++ b/src/dxgi/dxgi_swapchain.h @@ -28,54 +28,54 @@ namespace dxvk { DXGI_SWAP_CHAIN_DESC* pDesc); ~DxgiSwapChain(); - HRESULT QueryInterface( + HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void** ppvObject) final; - HRESULT GetParent( + HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void** ppParent) final; - HRESULT GetDevice( + HRESULT STDMETHODCALLTYPE GetDevice( REFIID riid, void** ppDevice) final; - HRESULT GetBuffer( + HRESULT STDMETHODCALLTYPE GetBuffer( UINT Buffer, REFIID riid, void** ppSurface) final; - HRESULT GetContainingOutput( + HRESULT STDMETHODCALLTYPE GetContainingOutput( IDXGIOutput **ppOutput) final; - HRESULT GetDesc( + HRESULT STDMETHODCALLTYPE GetDesc( DXGI_SWAP_CHAIN_DESC *pDesc) final; - HRESULT GetFrameStatistics( + HRESULT STDMETHODCALLTYPE GetFrameStatistics( DXGI_FRAME_STATISTICS *pStats) final; - HRESULT GetFullscreenState( + HRESULT STDMETHODCALLTYPE GetFullscreenState( BOOL *pFullscreen, IDXGIOutput **ppTarget) final; - HRESULT GetLastPresentCount( + HRESULT STDMETHODCALLTYPE GetLastPresentCount( UINT *pLastPresentCount) final; - HRESULT Present( + HRESULT STDMETHODCALLTYPE Present( UINT SyncInterval, UINT Flags) final; - HRESULT ResizeBuffers( + HRESULT STDMETHODCALLTYPE ResizeBuffers( UINT BufferCount, UINT Width, UINT Height, DXGI_FORMAT NewFormat, UINT SwapChainFlags) final; - HRESULT ResizeTarget( + HRESULT STDMETHODCALLTYPE ResizeTarget( const DXGI_MODE_DESC *pNewTargetParameters) final; - HRESULT SetFullscreenState( + HRESULT STDMETHODCALLTYPE SetFullscreenState( BOOL Fullscreen, IDXGIOutput *pTarget) final; diff --git a/src/dxvk/dxvk_device.cpp b/src/dxvk/dxvk_device.cpp index d0012824..12453412 100644 --- a/src/dxvk/dxvk_device.cpp +++ b/src/dxvk/dxvk_device.cpp @@ -172,7 +172,16 @@ namespace dxvk { Rc DxvkDevice::createSwapchain( const Rc& surface, const DxvkSwapchainProperties& properties) { - return new DxvkSwapchain(this, surface, properties, m_presentQueue); + return new DxvkSwapchain(this, surface, properties); + } + + + VkResult DxvkDevice::presentSwapImage( + const VkPresentInfoKHR& presentInfo) { + m_statCounters.increment(DxvkStat::DevQueuePresents, 1); + + std::lock_guard lock(m_submissionLock); + return m_vkd->vkQueuePresentKHR(m_presentQueue, &presentInfo); } @@ -195,8 +204,11 @@ namespace dxvk { commandList->trackResource(wakeSync); } - commandList->submit(m_graphicsQueue, - waitSemaphore, wakeSemaphore, fence->handle()); + { // Queue submissions are not thread safe + std::lock_guard lock(m_submissionLock); + commandList->submit(m_graphicsQueue, + waitSemaphore, wakeSemaphore, fence->handle()); + } // TODO Delay synchronization by putting these into a ring buffer fence->wait(std::numeric_limits::max()); diff --git a/src/dxvk/dxvk_device.h b/src/dxvk/dxvk_device.h index be091c9a..27babc6e 100644 --- a/src/dxvk/dxvk_device.h +++ b/src/dxvk/dxvk_device.h @@ -234,6 +234,17 @@ namespace dxvk { const Rc& surface, const DxvkSwapchainProperties& properties); + /** + * \brief Presents a swap chain image + * + * This is implicitly called by the swap chain class + * when presenting an image. Do not use this directly. + * \param [in] presentInfo Swap image present info + * \returns Present status + */ + VkResult presentSwapImage( + const VkPresentInfoKHR& presentInfo); + /** * \brief Submits a command list * @@ -276,6 +287,7 @@ namespace dxvk { Rc m_renderPassPool; Rc m_pipelineManager; + std::mutex m_submissionLock; VkQueue m_graphicsQueue = VK_NULL_HANDLE; VkQueue m_presentQueue = VK_NULL_HANDLE; diff --git a/src/dxvk/dxvk_swapchain.cpp b/src/dxvk/dxvk_swapchain.cpp index f799993e..581ffd21 100644 --- a/src/dxvk/dxvk_swapchain.cpp +++ b/src/dxvk/dxvk_swapchain.cpp @@ -10,12 +10,10 @@ namespace dxvk { DxvkSwapchain::DxvkSwapchain( const Rc& device, const Rc& surface, - const DxvkSwapchainProperties& properties, - VkQueue queue) + const DxvkSwapchainProperties& properties) : m_device (device), m_vkd (device->vkd()), m_surface (surface), - m_queue (queue), m_properties(properties) { this->recreateSwapchain(); } @@ -58,7 +56,7 @@ namespace dxvk { info.pImageIndices = &m_imageIndex; info.pResults = nullptr; - VkResult status = m_vkd->vkQueuePresentKHR(m_queue, &info); + VkResult status = m_device->presentSwapImage(info); if (status != VK_SUCCESS && status != VK_SUBOPTIMAL_KHR diff --git a/src/dxvk/dxvk_swapchain.h b/src/dxvk/dxvk_swapchain.h index a495510a..a6c5984b 100644 --- a/src/dxvk/dxvk_swapchain.h +++ b/src/dxvk/dxvk_swapchain.h @@ -31,8 +31,7 @@ namespace dxvk { DxvkSwapchain( const Rc& device, const Rc& surface, - const DxvkSwapchainProperties& properties, - VkQueue queue); + const DxvkSwapchainProperties& properties); ~DxvkSwapchain(); /** @@ -74,8 +73,6 @@ namespace dxvk { Rc m_vkd; Rc m_surface; - VkQueue m_queue; - DxvkSwapchainProperties m_properties; VkSwapchainKHR m_handle = VK_NULL_HANDLE; uint32_t m_imageIndex = 0; diff --git a/src/util/com/com_object.h b/src/util/com/com_object.h index 2bb2fa9f..cfb3fe28 100644 --- a/src/util/com/com_object.h +++ b/src/util/com/com_object.h @@ -22,11 +22,11 @@ namespace dxvk { virtual ~ComObject() { } - ULONG AddRef() { + ULONG STDMETHODCALLTYPE AddRef() { return ++m_refCount; } - ULONG Release() { + ULONG STDMETHODCALLTYPE Release() { ULONG refCount = --m_refCount; if (refCount == 0) { m_refCount += 0x80000000u; diff --git a/tests/meson.build b/tests/meson.build index b6efa377..096cbfdd 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -1,7 +1,3 @@ -lib_d3d11 = dxvk_compiler.find_library('d3d11') -lib_dxgi = dxvk_compiler.find_library('dxgi') -lib_d3dcompiler_47 = dxvk_compiler.find_library('d3dcompiler_47') - subdir('d3d11') subdir('dxbc') subdir('dxgi')