VideoCommon: Create a namespace for TextureConversionShaderGen.

This commit is contained in:
degasus
2017-11-25 11:07:14 +01:00
parent 491c10ec96
commit e8febd0cef
6 changed files with 29 additions and 20 deletions

View File

@ -12,11 +12,13 @@
#include "VideoCommon/VideoCommon.h"
#include "VideoCommon/VideoConfig.h"
TextureConverterShaderUid GetTextureConverterShaderUid(EFBCopyFormat dst_format, bool is_depth_copy,
bool is_intensity, bool scale_by_half)
namespace TextureConversionShaderGen
{
TextureConverterShaderUid out;
convertion_shader_uid_data* uid_data = out.GetUidData<convertion_shader_uid_data>();
TCShaderUid GetShaderUid(EFBCopyFormat dst_format, bool is_depth_copy, bool is_intensity,
bool scale_by_half)
{
TCShaderUid out;
UidData* uid_data = out.GetUidData<UidData>();
memset(uid_data, 0, sizeof(*uid_data));
uid_data->dst_format = dst_format;
@ -28,8 +30,7 @@ TextureConverterShaderUid GetTextureConverterShaderUid(EFBCopyFormat dst_format,
return out;
}
ShaderCode GenerateTextureConverterShaderCode(APIType api_type,
const convertion_shader_uid_data* uid_data)
ShaderCode GenerateShader(APIType api_type, const UidData* uid_data)
{
ShaderCode out;
@ -299,3 +300,5 @@ ShaderCode GenerateTextureConverterShaderCode(APIType api_type,
return out;
}
} // namespace TextureConversionShaderGen

View File

@ -10,10 +10,12 @@
enum class APIType;
#pragma pack(1)
struct convertion_shader_uid_data
namespace TextureConversionShaderGen
{
u32 NumValues() const { return sizeof(convertion_shader_uid_data); }
#pragma pack(1)
struct UidData
{
u32 NumValues() const { return sizeof(UidData); }
EFBCopyFormat dst_format;
u32 efb_has_alpha : 1;
@ -23,10 +25,11 @@ struct convertion_shader_uid_data
};
#pragma pack()
using TextureConverterShaderUid = ShaderUid<convertion_shader_uid_data>;
using TCShaderUid = ShaderUid<UidData>;
ShaderCode GenerateTextureConverterShaderCode(APIType api_type,
const convertion_shader_uid_data* uid_data);
ShaderCode GenerateShader(APIType api_type, const UidData* uid_data);
TextureConverterShaderUid GetTextureConverterShaderUid(EFBCopyFormat dst_format, bool is_depth_copy,
bool is_intensity, bool scale_by_half);
TCShaderUid GetShaderUid(EFBCopyFormat dst_format, bool is_depth_copy, bool is_intensity,
bool scale_by_half);
} // namespace TextureConversionShaderGen