dolphin/Source/Core/VideoCommon
Lioncash 86f8768268 VideoCommon/ShaderGenCommon: Make template functions regular functions
These are only ever used with ShaderCode instances and nothing else.
Given that, we can convert these helper functions to expect that type of
object as an argument and remove the need for templates, improving
compiler throughput a marginal amount, as the template instantiation
process doesn't need to be performed.

We can also move the definitions of these functions into the cpp file,
which allows us to remove a few inclusions from the ShaderGenCommon
header. This uncovered a few instances of indirect inclusions being
relied upon in other source files.

One other benefit is this allows changes to be made to the definitions
of the functions without needing to recompile all translation units that
make use of these functions, making change testing a little quicker.

Moving the definitions into the cpp file also allows us to completely
hide DefineOutputMember() from external view, given it's only ever used
inside of GenerateVSOutputMembers().
2020-05-25 21:12:29 -04:00
..
AbstractFramebuffer.cpp
AbstractFramebuffer.h
AbstractPipeline.h
AbstractShader.h
AbstractStagingTexture.cpp
AbstractStagingTexture.h
AbstractTexture.cpp FramebufferManager: Correctly handle read back D24S8 textures 2019-07-31 15:33:28 +10:00
AbstractTexture.h FramebufferManager: Correctly handle read back D24S8 textures 2019-07-31 15:33:28 +10:00
AsyncRequests.cpp Core: Skip duplicate frames when using frame advance 2020-04-09 11:39:29 +02:00
AsyncRequests.h Core: Skip duplicate frames when using frame advance 2020-04-09 11:39:29 +02:00
AsyncShaderCompiler.cpp
AsyncShaderCompiler.h
BoundingBox.cpp VideoCommon/BoundingBox: Move PixelShaderManager::SetBoundingBoxActive() calls into Enable()/Disable() 2019-12-05 11:57:58 -05:00
BoundingBox.h VideoCommon/BoundingBox: Make interface for querying bounding box data 2019-12-05 11:48:42 -05:00
BPFunctions.cpp VideoCommon: Remove unused MathUtil.h include from VideoCommon.h 2019-07-16 20:54:34 -04:00
BPFunctions.h VideoCommon: Remove unused MathUtil.h include from VideoCommon.h 2019-07-16 20:54:34 -04:00
BPMemory.cpp
BPMemory.h Externals: Add zstd 2020-05-13 20:53:10 +02:00
BPStructs.cpp Remove warnings of -Wsign-compare 2020-03-25 07:57:14 +08:00
BPStructs.h
CMakeLists.txt VideoCommon: Add Free Look camera with separate modes 2020-05-03 13:31:47 -05:00
CommandProcessor.cpp Fix Windows CMake build errors 2020-05-03 14:10:24 +02:00
CommandProcessor.h VideoCommon: Constrain the array_base registers 2019-05-31 03:22:00 -04:00
ConstantManager.h
CPMemory.cpp
CPMemory.h
DataReader.h Externals: Add zstd 2020-05-13 20:53:10 +02:00
DriverDetails.cpp Vulkan: Add a DriverDetails bug for "slow cached readback memory" 2019-10-02 21:34:58 +10:00
DriverDetails.h Vulkan: Add a DriverDetails bug for "slow cached readback memory" 2019-10-02 21:34:58 +10:00
Fifo.cpp VideoBackendBase: Do save state logic on the GPU thread 2019-07-24 04:08:25 +10:00
Fifo.h
FPSCounter.cpp
FPSCounter.h
FramebufferManager.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
FramebufferManager.h FramebufferManager: Correctly handle read back D24S8 textures 2019-07-31 15:33:28 +10:00
FramebufferShaderGen.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
FramebufferShaderGen.h VideoCommon/FramebufferShaderGen: Remove unused Config struct 2019-12-04 23:54:15 -05:00
FrameDump.cpp FrameDump: Set first_frame if movie frame number <= 1 2019-12-22 11:54:34 +10:00
FrameDump.h VideoCommon: Rename AVIDump to FrameDump 2019-06-30 13:02:39 +02:00
FreeLookCamera.cpp VideoCommon: Add Free Look camera with separate modes 2020-05-03 13:31:47 -05:00
FreeLookCamera.h VideoCommon: Add Free Look camera with separate modes 2020-05-03 13:31:47 -05:00
GeometryShaderGen.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
GeometryShaderGen.h
GeometryShaderManager.cpp
GeometryShaderManager.h
GXPipelineTypes.h
HiresTextures_DDSLoader.cpp
HiresTextures.cpp VideoCommon: Allow texture folders to be determined by a <gameid>.txt file 2020-03-15 12:34:04 -05:00
HiresTextures.h VideoCommon: Allow texture folders to be determined by a <gameid>.txt file 2020-03-15 12:34:04 -05:00
ImageWrite.cpp
ImageWrite.h
IndexGenerator.cpp VideoCommon/IndexGenerator: Eliminate static state 2019-12-05 10:49:32 -05:00
IndexGenerator.h VideoCommon/IndexGenerator: Eliminate static state 2019-12-05 10:49:32 -05:00
LightingShaderGen.cpp
LightingShaderGen.h
LookUpTables.h
NativeVertexFormat.h
NetPlayChatUI.cpp
NetPlayChatUI.h
NetPlayGolfUI.cpp VideoCommon: Make use of fmt outside of shader generators 2019-11-23 16:00:45 -05:00
NetPlayGolfUI.h
OnScreenDisplay.cpp VideoCommon/OSD: Process OSD messages even when they are disabled. 2020-01-24 11:00:58 -06:00
OnScreenDisplay.h VideoCommon/OnScreenDisplay: Take Message's std::string parameter by value 2019-07-28 23:00:58 -04:00
OpcodeDecoding.cpp VideoCommon/OpcodeDecoding: Make use of if constexpr 2019-12-05 09:13:06 -05:00
OpcodeDecoding.h VideoCommon/OpcodeDecoding: Move g_bRecordFifoData into namespace 2019-12-05 09:13:03 -05:00
PerfQueryBase.cpp
PerfQueryBase.h
PixelEngine.cpp VideoCommon/BoundingBox: Move PixelShaderManager::SetBoundingBoxActive() calls into Enable()/Disable() 2019-12-05 11:57:58 -05:00
PixelEngine.h
PixelShaderGen.cpp VideoCommon/BoundingBox: Make interface for querying bounding box data 2019-12-05 11:48:42 -05:00
PixelShaderGen.h
PixelShaderManager.cpp Common/CommonFuncs: Remove now-unneccessary ArraySize function 2019-06-01 10:07:57 -04:00
PixelShaderManager.h
PostProcessing.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
PostProcessing.h VideoCommon: Remove unused MathUtil.h include from VideoCommon.h 2019-07-16 20:54:34 -04:00
RenderBase.cpp Merge pull request #8730 from JosJuice/frame-advance-duplicate-frame 2020-04-16 18:29:16 -04:00
RenderBase.h VideoCommon: Tweak widescreen heuristic and clean up some related Renderer logic. 2020-02-09 13:22:25 -06:00
RenderState.cpp RenderState: Approximate logic op with blending if unsupported 2019-08-04 14:06:08 +10:00
RenderState.h RenderState: Approximate logic op with blending if unsupported 2019-08-04 14:06:08 +10:00
SamplerCommon.h
sfont.inc
ShaderCache.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
ShaderCache.h VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
ShaderGenCommon.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
ShaderGenCommon.h VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
Statistics.cpp VideoCommon: Remove unused MathUtil.h include from VideoCommon.h 2019-07-16 20:54:34 -04:00
Statistics.h VideoCommon/Statistics: Remove unused DECSTAT macro 2019-07-10 23:40:13 -04:00
TextureCacheBase.cpp Cleanup warnings of -Wunused-lambda-capture 2020-03-24 20:14:10 +08:00
TextureCacheBase.h VideoCommon/TextureCacheBase: Make OnConfigChanged's parameter a const reference 2019-08-04 22:31:27 -04:00
TextureConfig.cpp
TextureConfig.h
TextureConversionShader.cpp VideoCommon/TextureConversionShader: Make use of fmt where applicable 2020-01-23 14:19:40 -05:00
TextureConversionShader.h VideoCommon/TextureConversionShader: Convert over to using ShaderCode 2020-01-23 14:19:36 -05:00
TextureConverterShaderGen.cpp VideoCommon/TextureConverterShaderGen: Convert over to fmt 2019-12-03 05:05:02 -05:00
TextureConverterShaderGen.h
TextureDecoder_Common.cpp
TextureDecoder_Generic.cpp
TextureDecoder_Util.h
TextureDecoder_x64.cpp
TextureDecoder.h TextureCache: Support reinterpreting formats for VRAM textures 2019-07-14 19:16:27 +10:00
UberShaderCommon.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
UberShaderCommon.h VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
UberShaderPixel.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
UberShaderPixel.h VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
UberShaderVertex.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
UberShaderVertex.h
VertexLoader_Color.cpp
VertexLoader_Color.h
VertexLoader_Normal.cpp
VertexLoader_Normal.h
VertexLoader_Position.cpp
VertexLoader_Position.h
VertexLoader_TextCoord.cpp
VertexLoader_TextCoord.h
VertexLoader.cpp
VertexLoader.h
VertexLoaderARM64.cpp Compile fixes for Windows-on-ARM64 2019-12-28 19:20:41 +10:00
VertexLoaderARM64.h
VertexLoaderBase.cpp VideoCommon: Make use of fmt outside of shader generators 2019-11-23 16:00:45 -05:00
VertexLoaderBase.h
VertexLoaderManager.cpp VideoCommon/IndexGenerator: Eliminate static state 2019-12-05 10:49:32 -05:00
VertexLoaderManager.h
VertexLoaderUtils.h Externals: Add zstd 2020-05-13 20:53:10 +02:00
VertexLoaderX64.cpp VertexLoaderX64: Don't use PDEP on AMD Zen 2020-01-26 22:12:00 -05:00
VertexLoaderX64.h
VertexManagerBase.cpp VideoCommon/ShaderGenCommon: Make template functions regular functions 2020-05-25 21:12:29 -04:00
VertexManagerBase.h VideoCommon: Tweak widescreen heuristic and clean up some related Renderer logic. 2020-02-09 13:22:25 -06:00
VertexShaderGen.cpp
VertexShaderGen.h
VertexShaderManager.cpp VideoCommon: remove VertexShaderManager functions instead preferring the direct freelook camera methods 2020-05-03 13:34:13 -05:00
VertexShaderManager.h VideoCommon: remove VertexShaderManager functions instead preferring the direct freelook camera methods 2020-05-03 13:34:13 -05:00
VideoBackendBase.cpp Migrate video backend setting to the new config system 2020-05-22 16:54:53 +02:00
VideoBackendBase.h Migrate video backend setting to the new config system 2020-05-22 16:54:53 +02:00
VideoCommon.h VideoCommon/OpcodeDecoding: Move g_bRecordFifoData into namespace 2019-12-05 09:13:03 -05:00
VideoCommon.vcxproj VideoCommon: Add Free Look camera with separate modes 2020-05-03 13:31:47 -05:00
VideoCommon.vcxproj.filters Add an ARM64 target to Visual Studio projects 2019-12-28 19:20:41 +10:00
VideoConfig.cpp Add an option to present/skip presenting duplicate frames 2020-01-14 10:57:35 +10:00
VideoConfig.h FramebufferManager: Copy to color format for depth readbacks on GLES 2020-05-24 16:11:11 +10:00
VideoState.cpp FramebufferManager: Support saving EFB to save state 2019-07-24 05:19:22 +10:00
VideoState.h
XFMemory.cpp
XFMemory.h XFMemory: SETPOSMTXINFO should be SETPOSTMTXINFO 2020-04-29 05:26:02 +02:00
XFStructs.cpp XFMemory: SETPOSMTXINFO should be SETPOSTMTXINFO 2020-04-29 05:26:02 +02:00
XFStructs.h