diff --git a/qrenderdoc/Code/Interface/Analytics.cpp b/qrenderdoc/Code/Interface/Analytics.cpp index e7bdd2ca0..bd7b86528 100644 --- a/qrenderdoc/Code/Interface/Analytics.cpp +++ b/qrenderdoc/Code/Interface/Analytics.cpp @@ -38,40 +38,40 @@ #if RENDERDOC_ANALYTICS_ENABLE template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "int"; + return "int"_lit; } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "string"; + return "string"_lit; } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "string array"; + return "string array"_lit; } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "bool"; + return "bool"_lit; } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "Average"; + return "Average"_lit; } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { // DaysUsed - return "int"; + return "int"_lit; } namespace @@ -184,25 +184,25 @@ void saveTo(QVariantMap &parent, const QString &name, const T &el, bool reportin } // add a macro to either document, load, or save, depending on our state. -#define ANALYTIC_SERIALISE(varname) \ - if(type == AnalyticsSerialiseType::Documenting) \ - { \ - QString var = lit(#varname); \ - int idx = var.indexOf(QLatin1Char('.')); \ - if(idx >= 0) \ - var = var.mid(idx + 1); \ - doc += lit("%1 (%2): %3
") \ - .arg(var) \ - .arg(QString::fromUtf8(TypeName())) \ - .arg(docs.varname); \ - } \ - else if(type == AnalyticsSerialiseType::Loading) \ - { \ - loadFrom(values, lit(#varname), serdb.varname); \ - } \ - else \ - { \ - saveTo(values, lit(#varname), serdb.varname, reporting); \ +#define ANALYTIC_SERIALISE(varname) \ + if(type == AnalyticsSerialiseType::Documenting) \ + { \ + QString var = lit(#varname); \ + int idx = var.indexOf(QLatin1Char('.')); \ + if(idx >= 0) \ + var = var.mid(idx + 1); \ + doc += lit("%1 (%2): %3
") \ + .arg(var) \ + .arg(QString(rdcstr(TypeName()))) \ + .arg(docs.varname); \ + } \ + else if(type == AnalyticsSerialiseType::Loading) \ + { \ + loadFrom(values, lit(#varname), serdb.varname); \ + } \ + else \ + { \ + saveTo(values, lit(#varname), serdb.varname, reporting); \ } // only used during documenting diff --git a/qrenderdoc/Code/Interface/PersistantConfig.cpp b/qrenderdoc/Code/Interface/PersistantConfig.cpp index 74517b0c1..134a5c294 100644 --- a/qrenderdoc/Code/Interface/PersistantConfig.cpp +++ b/qrenderdoc/Code/Interface/PersistantConfig.cpp @@ -31,7 +31,7 @@ #include "QRDInterface.h" template <> -std::string DoStringise(const TimeUnit &el) +rdcstr DoStringise(const TimeUnit &el) { BEGIN_ENUM_STRINGISE(TimeUnit) { diff --git a/qrenderdoc/Code/Interface/ShaderProcessingTool.cpp b/qrenderdoc/Code/Interface/ShaderProcessingTool.cpp index 62353d60d..1090a5fd7 100644 --- a/qrenderdoc/Code/Interface/ShaderProcessingTool.cpp +++ b/qrenderdoc/Code/Interface/ShaderProcessingTool.cpp @@ -37,7 +37,7 @@ static const QString hlsl_stage2[ENUM_ARRAY_SIZE(ShaderStage)] = { }; template <> -std::string DoStringise(const KnownShaderTool &el) +rdcstr DoStringise(const KnownShaderTool &el) { BEGIN_ENUM_STRINGISE(KnownShaderTool); { diff --git a/qrenderdoc/Code/QRDUtils.cpp b/qrenderdoc/Code/QRDUtils.cpp index 69b205abd..3f04915b5 100644 --- a/qrenderdoc/Code/QRDUtils.cpp +++ b/qrenderdoc/Code/QRDUtils.cpp @@ -55,14 +55,14 @@ // so we implement it here using QString. It's inefficient, but this is a very uncommon path - // either for invalid values or for when a new enum is added and the code isn't updated template <> -std::string DoStringise(const uint32_t &el) +rdcstr DoStringise(const uint32_t &el) { return QString::number(el).toStdString(); } // this one we do by hand as it requires formatting template <> -std::string DoStringise(const ResourceId &el) +rdcstr DoStringise(const ResourceId &el) { uint64_t num; memcpy(&num, &el, sizeof(num)); diff --git a/qrenderdoc/Code/RGPInterop.cpp b/qrenderdoc/Code/RGPInterop.cpp index 3d61127fa..70ac27a0c 100644 --- a/qrenderdoc/Code/RGPInterop.cpp +++ b/qrenderdoc/Code/RGPInterop.cpp @@ -110,7 +110,7 @@ bool RGPInterop::RGPSupportsInterop(const QString &RGPPath) } template <> -std::string DoStringise(const RGPCommand &el) +rdcstr DoStringise(const RGPCommand &el) { BEGIN_ENUM_STRINGISE(RGPCommand); { diff --git a/qrenderdoc/Code/pyrenderdoc/PythonContext.cpp b/qrenderdoc/Code/pyrenderdoc/PythonContext.cpp index 013e27a5c..1b59dd556 100644 --- a/qrenderdoc/Code/pyrenderdoc/PythonContext.cpp +++ b/qrenderdoc/Code/pyrenderdoc/PythonContext.cpp @@ -590,9 +590,8 @@ bool PythonContext::LoadExtension(ICaptureContext &ctx, const rdcstr &extension) if(register_func) { - QByteArray baseTypeName = TypeName(); - baseTypeName += " *"; - PyObject *pyctx = PassObjectToPython(baseTypeName.data(), &ctx); + PyObject *pyctx = + PassObjectToPython((rdcstr(TypeName()) + " *").c_str(), &ctx); PyObject *retval = NULL; if(pyctx) diff --git a/qrenderdoc/Code/pyrenderdoc/PythonContext.h b/qrenderdoc/Code/pyrenderdoc/PythonContext.h index f7f019957..941a98022 100644 --- a/qrenderdoc/Code/pyrenderdoc/PythonContext.h +++ b/qrenderdoc/Code/pyrenderdoc/PythonContext.h @@ -68,9 +68,7 @@ public: template void setGlobal(const char *varName, T *object) { - QByteArray baseTypeName = TypeName(); - baseTypeName += " *"; - setGlobal(varName, baseTypeName.data(), (void *)object); + setGlobal(varName, (rdcstr(TypeName()) + " *").c_str(), (void *)object); } template diff --git a/qrenderdoc/Code/pyrenderdoc/ext_refcounts.h b/qrenderdoc/Code/pyrenderdoc/ext_refcounts.h index 9a17434a2..18e834022 100644 --- a/qrenderdoc/Code/pyrenderdoc/ext_refcounts.h +++ b/qrenderdoc/Code/pyrenderdoc/ext_refcounts.h @@ -77,7 +77,7 @@ inline SDObject *MakeFromArgsTuple(PyObject *args) SWIG_exception_fail(SWIG_ArgError(res), "invalid type name used to create SDObject, expected string"); - result = new SDObject(name.c_str(), typeName.c_str()); + result = new SDObject(name.c_str(), typeName); return result; fail: diff --git a/qrenderdoc/Code/pyrenderdoc/pyconversion.h b/qrenderdoc/Code/pyrenderdoc/pyconversion.h index 2d68a4d11..1641fd2bb 100644 --- a/qrenderdoc/Code/pyrenderdoc/pyconversion.h +++ b/qrenderdoc/Code/pyrenderdoc/pyconversion.h @@ -39,7 +39,7 @@ struct TypeConversion if(cached_type_info) return cached_type_info; - std::string baseTypeName = TypeName(); + rdcstr baseTypeName = TypeName(); baseTypeName += " *"; cached_type_info = SWIG_TypeQuery(baseTypeName.c_str()); @@ -103,7 +103,7 @@ struct TypeConversion if(cached_type_info) return cached_type_info; - std::string baseTypeName = TypeName(); + rdcstr baseTypeName = TypeName(); baseTypeName += " *"; cached_type_info = SWIG_TypeQuery(baseTypeName.c_str()); @@ -526,7 +526,7 @@ struct TypeConversion, false> static swig_type_info *GetTypeInfo() { static swig_type_info *cached_type_info = NULL; - static std::string typeName = std::string("rdcarray < ") + TypeName() + " > *"; + static rdcstr typeName = "rdcarray < " + TypeName() + " > *"; if(cached_type_info) return cached_type_info; diff --git a/qrenderdoc/Code/pyrenderdoc/pyrenderdoc_stub.cpp b/qrenderdoc/Code/pyrenderdoc/pyrenderdoc_stub.cpp index b4c6b99a2..d264b2b9d 100644 --- a/qrenderdoc/Code/pyrenderdoc/pyrenderdoc_stub.cpp +++ b/qrenderdoc/Code/pyrenderdoc/pyrenderdoc_stub.cpp @@ -29,7 +29,7 @@ #include "renderdoc_replay.h" template <> -std::string DoStringise(const uint32_t &el) +rdcstr DoStringise(const uint32_t &el) { static char tmp[16]; memset(tmp, 0, sizeof(tmp)); diff --git a/renderdoc/3rdparty/catch/catch.cpp b/renderdoc/3rdparty/catch/catch.cpp index 9e9ae9a28..65f9d9179 100644 --- a/renderdoc/3rdparty/catch/catch.cpp +++ b/renderdoc/3rdparty/catch/catch.cpp @@ -35,7 +35,7 @@ // since we force use of ToStr for everything and don't allow using catch's stringstream (so that // enums get forwarded to ToStr) we need to implement ToStr for one of Catch's structs. template <> -std::string DoStringise(const Catch::SourceLineInfo &el) +rdcstr DoStringise(const Catch::SourceLineInfo &el) { return StringFormat::Fmt("%s:%zu", el.file, el.line); } diff --git a/renderdoc/android/android_utils.cpp b/renderdoc/android/android_utils.cpp index 77bb5ba6d..1a1a86a86 100644 --- a/renderdoc/android/android_utils.cpp +++ b/renderdoc/android/android_utils.cpp @@ -634,7 +634,7 @@ void LogcatThread::Tick() }; template <> -std::string DoStringise(const Android::ABI &el) +rdcstr DoStringise(const Android::ABI &el) { BEGIN_ENUM_STRINGISE(Android::ABI); { diff --git a/renderdoc/api/replay/renderdoc_tostr.inl b/renderdoc/api/replay/renderdoc_tostr.inl index ae6ae9dcf..af344e146 100644 --- a/renderdoc/api/replay/renderdoc_tostr.inl +++ b/renderdoc/api/replay/renderdoc_tostr.inl @@ -23,7 +23,7 @@ ******************************************************************************/ template <> -std::string DoStringise(const ReplayStatus &el) +rdcstr DoStringise(const ReplayStatus &el) { BEGIN_ENUM_STRINGISE(ReplayStatus) { @@ -55,7 +55,7 @@ std::string DoStringise(const ReplayStatus &el) } template <> -std::string DoStringise(const WindowingSystem &el) +rdcstr DoStringise(const WindowingSystem &el) { BEGIN_ENUM_STRINGISE(WindowingSystem) { @@ -70,7 +70,7 @@ std::string DoStringise(const WindowingSystem &el) } template <> -std::string DoStringise(const ResourceFormatType &el) +rdcstr DoStringise(const ResourceFormatType &el) { BEGIN_ENUM_STRINGISE(ResourceFormatType) { @@ -106,7 +106,7 @@ std::string DoStringise(const ResourceFormatType &el) } template <> -std::string DoStringise(const CompType &el) +rdcstr DoStringise(const CompType &el) { BEGIN_ENUM_STRINGISE(CompType) { @@ -126,7 +126,7 @@ std::string DoStringise(const CompType &el) } template <> -std::string DoStringise(const FileType &el) +rdcstr DoStringise(const FileType &el) { BEGIN_ENUM_STRINGISE(FileType) { @@ -143,7 +143,7 @@ std::string DoStringise(const FileType &el) } template <> -std::string DoStringise(const AlphaMapping &el) +rdcstr DoStringise(const AlphaMapping &el) { BEGIN_ENUM_STRINGISE(AlphaMapping) { @@ -156,7 +156,7 @@ std::string DoStringise(const AlphaMapping &el) } template <> -std::string DoStringise(const EnvMod &el) +rdcstr DoStringise(const EnvMod &el) { BEGIN_ENUM_STRINGISE(EnvMod) { @@ -168,7 +168,7 @@ std::string DoStringise(const EnvMod &el) } template <> -std::string DoStringise(const EnvSep &el) +rdcstr DoStringise(const EnvSep &el) { BEGIN_ENUM_STRINGISE(EnvSep) { @@ -181,7 +181,7 @@ std::string DoStringise(const EnvSep &el) } template <> -std::string DoStringise(const Topology &el) +rdcstr DoStringise(const Topology &el) { BEGIN_ENUM_STRINGISE(Topology) { @@ -233,7 +233,7 @@ std::string DoStringise(const Topology &el) } template <> -std::string DoStringise(const FillMode &el) +rdcstr DoStringise(const FillMode &el) { BEGIN_ENUM_STRINGISE(FillMode) { @@ -245,7 +245,7 @@ std::string DoStringise(const FillMode &el) } template <> -std::string DoStringise(const CullMode &el) +rdcstr DoStringise(const CullMode &el) { BEGIN_ENUM_STRINGISE(CullMode) { @@ -258,7 +258,7 @@ std::string DoStringise(const CullMode &el) } template <> -std::string DoStringise(const ConservativeRaster &el) +rdcstr DoStringise(const ConservativeRaster &el) { BEGIN_ENUM_STRINGISE(ConservativeRaster) { @@ -270,7 +270,7 @@ std::string DoStringise(const ConservativeRaster &el) } template <> -std::string DoStringise(const FilterMode &el) +rdcstr DoStringise(const FilterMode &el) { BEGIN_ENUM_STRINGISE(FilterMode) { @@ -284,7 +284,7 @@ std::string DoStringise(const FilterMode &el) } template <> -std::string DoStringise(const FilterFunction &el) +rdcstr DoStringise(const FilterFunction &el) { BEGIN_ENUM_STRINGISE(FilterFunction) { @@ -297,7 +297,7 @@ std::string DoStringise(const FilterFunction &el) } template <> -std::string DoStringise(const CompareFunction &el) +rdcstr DoStringise(const CompareFunction &el) { BEGIN_ENUM_STRINGISE(CompareFunction) { @@ -314,7 +314,7 @@ std::string DoStringise(const CompareFunction &el) } template <> -std::string DoStringise(const BlendMultiplier &el) +rdcstr DoStringise(const BlendMultiplier &el) { BEGIN_ENUM_STRINGISE(BlendMultiplier) { @@ -342,7 +342,7 @@ std::string DoStringise(const BlendMultiplier &el) } template <> -std::string DoStringise(const BlendOperation &el) +rdcstr DoStringise(const BlendOperation &el) { BEGIN_ENUM_STRINGISE(BlendOperation) { @@ -356,7 +356,7 @@ std::string DoStringise(const BlendOperation &el) } template <> -std::string DoStringise(const StencilOperation &el) +rdcstr DoStringise(const StencilOperation &el) { BEGIN_ENUM_STRINGISE(StencilOperation) { @@ -373,7 +373,7 @@ std::string DoStringise(const StencilOperation &el) } template <> -std::string DoStringise(const LogicOperation &el) +rdcstr DoStringise(const LogicOperation &el) { BEGIN_ENUM_STRINGISE(LogicOperation) { @@ -398,7 +398,7 @@ std::string DoStringise(const LogicOperation &el) } template <> -std::string DoStringise(const QualityHint &el) +rdcstr DoStringise(const QualityHint &el) { BEGIN_ENUM_STRINGISE(QualityHint) { @@ -410,7 +410,7 @@ std::string DoStringise(const QualityHint &el) } template <> -std::string DoStringise(const TextureFilter &el) +rdcstr DoStringise(const TextureFilter &el) { std::string filter = ""; std::string filtPrefix = ""; @@ -442,7 +442,7 @@ std::string DoStringise(const TextureFilter &el) } template <> -std::string DoStringise(const AddressMode &el) +rdcstr DoStringise(const AddressMode &el) { BEGIN_ENUM_STRINGISE(AddressMode); { @@ -456,7 +456,7 @@ std::string DoStringise(const AddressMode &el) } template <> -std::string DoStringise(const YcbcrConversion &el) +rdcstr DoStringise(const YcbcrConversion &el) { BEGIN_ENUM_STRINGISE(YcbcrConversion); { @@ -470,7 +470,7 @@ std::string DoStringise(const YcbcrConversion &el) } template <> -std::string DoStringise(const YcbcrRange &el) +rdcstr DoStringise(const YcbcrRange &el) { BEGIN_ENUM_STRINGISE(YcbcrRange); { @@ -481,7 +481,7 @@ std::string DoStringise(const YcbcrRange &el) } template <> -std::string DoStringise(const ChromaSampleLocation &el) +rdcstr DoStringise(const ChromaSampleLocation &el) { BEGIN_ENUM_STRINGISE(ChromaSampleLocation); { @@ -492,7 +492,7 @@ std::string DoStringise(const ChromaSampleLocation &el) } template <> -std::string DoStringise(const ResourceType &el) +rdcstr DoStringise(const ResourceType &el) { BEGIN_ENUM_STRINGISE(ResourceType) { @@ -519,7 +519,7 @@ std::string DoStringise(const ResourceType &el) } template <> -std::string DoStringise(const TextureType &el) +rdcstr DoStringise(const TextureType &el) { BEGIN_ENUM_STRINGISE(TextureType) { @@ -540,7 +540,7 @@ std::string DoStringise(const TextureType &el) } template <> -std::string DoStringise(const ShaderBuiltin &el) +rdcstr DoStringise(const ShaderBuiltin &el) { BEGIN_ENUM_STRINGISE(ShaderBuiltin) { @@ -579,7 +579,7 @@ std::string DoStringise(const ShaderBuiltin &el) } template <> -std::string DoStringise(const BindType &el) +rdcstr DoStringise(const BindType &el) { BEGIN_ENUM_STRINGISE(BindType) { @@ -598,7 +598,7 @@ std::string DoStringise(const BindType &el) } template <> -std::string DoStringise(const MessageSource &el) +rdcstr DoStringise(const MessageSource &el) { BEGIN_ENUM_STRINGISE(MessageSource) { @@ -614,7 +614,7 @@ std::string DoStringise(const MessageSource &el) } template <> -std::string DoStringise(const MessageSeverity &el) +rdcstr DoStringise(const MessageSeverity &el) { BEGIN_ENUM_STRINGISE(MessageSeverity) { @@ -627,7 +627,7 @@ std::string DoStringise(const MessageSeverity &el) } template <> -std::string DoStringise(const MessageCategory &el) +rdcstr DoStringise(const MessageCategory &el) { BEGIN_ENUM_STRINGISE(MessageCategory) { @@ -651,7 +651,7 @@ std::string DoStringise(const MessageCategory &el) } template <> -std::string DoStringise(const TextureSwizzle &el) +rdcstr DoStringise(const TextureSwizzle &el) { BEGIN_ENUM_STRINGISE(TextureSwizzle) { @@ -666,7 +666,7 @@ std::string DoStringise(const TextureSwizzle &el) } template <> -std::string DoStringise(const ResourceUsage &el) +rdcstr DoStringise(const ResourceUsage &el) { BEGIN_ENUM_STRINGISE(ResourceUsage) { @@ -726,7 +726,7 @@ std::string DoStringise(const ResourceUsage &el) } template <> -std::string DoStringise(const VarType &el) +rdcstr DoStringise(const VarType &el) { BEGIN_ENUM_STRINGISE(VarType) { @@ -747,7 +747,7 @@ std::string DoStringise(const VarType &el) } template <> -std::string DoStringise(const RegisterType &el) +rdcstr DoStringise(const RegisterType &el) { BEGIN_ENUM_STRINGISE(RegisterType) { @@ -759,7 +759,7 @@ std::string DoStringise(const RegisterType &el) } template <> -std::string DoStringise(const GPUCounter &el) +rdcstr DoStringise(const GPUCounter &el) { if(IsAMDCounter(el)) return "AMD Counter " + ToStr((uint32_t)el); @@ -790,7 +790,7 @@ std::string DoStringise(const GPUCounter &el) } template <> -std::string DoStringise(const CounterUnit &el) +rdcstr DoStringise(const CounterUnit &el) { BEGIN_ENUM_STRINGISE(CounterUnit) { @@ -805,7 +805,7 @@ std::string DoStringise(const CounterUnit &el) } template <> -std::string DoStringise(const ShaderStage &el) +rdcstr DoStringise(const ShaderStage &el) { BEGIN_ENUM_STRINGISE(ShaderStage) { @@ -820,7 +820,7 @@ std::string DoStringise(const ShaderStage &el) } template <> -std::string DoStringise(const MeshDataStage &el) +rdcstr DoStringise(const MeshDataStage &el) { BEGIN_ENUM_STRINGISE(MeshDataStage) { @@ -833,7 +833,7 @@ std::string DoStringise(const MeshDataStage &el) } template <> -std::string DoStringise(const DebugOverlay &el) +rdcstr DoStringise(const DebugOverlay &el) { BEGIN_ENUM_STRINGISE(DebugOverlay) { @@ -857,7 +857,7 @@ std::string DoStringise(const DebugOverlay &el) } template <> -std::string DoStringise(const GPUVendor &el) +rdcstr DoStringise(const GPUVendor &el) { BEGIN_ENUM_STRINGISE(GPUVendor) { @@ -876,7 +876,7 @@ std::string DoStringise(const GPUVendor &el) } template <> -std::string DoStringise(const GraphicsAPI &el) +rdcstr DoStringise(const GraphicsAPI &el) { BEGIN_ENUM_STRINGISE(GraphicsAPI) { @@ -889,7 +889,7 @@ std::string DoStringise(const GraphicsAPI &el) } template <> -std::string DoStringise(const ShaderEncoding &el) +rdcstr DoStringise(const ShaderEncoding &el) { BEGIN_ENUM_STRINGISE(ShaderEncoding) { @@ -904,7 +904,7 @@ std::string DoStringise(const ShaderEncoding &el) } template <> -std::string DoStringise(const SectionType &el) +rdcstr DoStringise(const SectionType &el) { BEGIN_ENUM_STRINGISE(SectionType); { @@ -920,7 +920,7 @@ std::string DoStringise(const SectionType &el) } template <> -std::string DoStringise(const D3DBufferViewFlags &el) +rdcstr DoStringise(const D3DBufferViewFlags &el) { BEGIN_BITFIELD_STRINGISE(D3DBufferViewFlags); { @@ -934,7 +934,7 @@ std::string DoStringise(const D3DBufferViewFlags &el) } template <> -std::string DoStringise(const PathProperty &el) +rdcstr DoStringise(const PathProperty &el) { BEGIN_BITFIELD_STRINGISE(PathProperty); { @@ -951,7 +951,7 @@ std::string DoStringise(const PathProperty &el) } template <> -std::string DoStringise(const SectionFlags &el) +rdcstr DoStringise(const SectionFlags &el) { BEGIN_BITFIELD_STRINGISE(SectionFlags); { @@ -965,7 +965,7 @@ std::string DoStringise(const SectionFlags &el) } template <> -std::string DoStringise(const ShaderEvents &el) +rdcstr DoStringise(const ShaderEvents &el) { BEGIN_BITFIELD_STRINGISE(ShaderEvents); { @@ -978,7 +978,7 @@ std::string DoStringise(const ShaderEvents &el) } template <> -std::string DoStringise(const TextureCategory &el) +rdcstr DoStringise(const TextureCategory &el) { BEGIN_BITFIELD_STRINGISE(TextureCategory); { @@ -994,7 +994,7 @@ std::string DoStringise(const TextureCategory &el) } template <> -std::string DoStringise(const BufferCategory &el) +rdcstr DoStringise(const BufferCategory &el) { BEGIN_BITFIELD_STRINGISE(BufferCategory); { @@ -1010,7 +1010,7 @@ std::string DoStringise(const BufferCategory &el) } template <> -std::string DoStringise(const DrawFlags &el) +rdcstr DoStringise(const DrawFlags &el) { BEGIN_BITFIELD_STRINGISE(DrawFlags); { @@ -1044,7 +1044,7 @@ std::string DoStringise(const DrawFlags &el) } template <> -std::string DoStringise(const ShaderStageMask &el) +rdcstr DoStringise(const ShaderStageMask &el) { BEGIN_BITFIELD_STRINGISE(ShaderStageMask); { diff --git a/renderdoc/api/replay/stringise.h b/renderdoc/api/replay/stringise.h index 3b05bed31..19f029dfa 100644 --- a/renderdoc/api/replay/stringise.h +++ b/renderdoc/api/replay/stringise.h @@ -24,26 +24,26 @@ #pragma once -#include #include +#include "rdcstr.h" template -std::string DoStringise(const T &el); +rdcstr DoStringise(const T &el); template ::value> struct StringConverter { - static std::string Do(const T &el) { return DoStringise(el); } + static rdcstr Do(const T &el) { return DoStringise(el); } }; template struct StringConverter { - static std::string Do(const T &el) { return DoStringise(el); } + static rdcstr Do(const T &el) { return DoStringise(el); } }; template -std::string ToStr(const T &el) +rdcstr ToStr(const T &el) { return StringConverter::Do(el); } @@ -61,19 +61,19 @@ std::string ToStr(const T &el) // stringise the parameter #define STRINGISE_ENUM_CLASS(a) \ - case enumType::a: return #a; + case enumType::a: return STRING_LITERAL(#a); // stringise the parameter with a custom string #define STRINGISE_ENUM_CLASS_NAMED(value, str) \ - case enumType::value: return str; + case enumType::value: return STRING_LITERAL(str); // stringise the parameter #define STRINGISE_ENUM(a) \ - case a: return #a; + case a: return STRING_LITERAL(#a); // stringise the parameter with a custom string #define STRINGISE_ENUM_NAMED(value, str) \ - case value: return str; + case value: return STRING_LITERAL(str); // end enum switches #define END_ENUM_STRINGISE() \ @@ -89,23 +89,23 @@ std::string ToStr(const T &el) "Type in macro doesn't match el"); \ uint32_t local = (uint32_t)el; \ (void)(enumType) el; \ - std::string ret; + rdcstr ret; #define STRINGISE_BITFIELD_VALUE(b) \ if(el == b) \ - return #b; + return STRING_LITERAL(#b); #define STRINGISE_BITFIELD_CLASS_VALUE(b) \ if(el == enumType::b) \ - return #b; + return STRING_LITERAL(#b); #define STRINGISE_BITFIELD_VALUE_NAMED(b, str) \ if(el == b) \ - return str; + return STRING_LITERAL(str); #define STRINGISE_BITFIELD_CLASS_VALUE_NAMED(b, str) \ if(el == enumType::b) \ - return str; + return STRING_LITERAL(str); #define STRINGISE_BITFIELD_BIT(b) \ if(el & b) \ @@ -150,13 +150,13 @@ std::string ToStr(const T &el) return ret; template -inline const char *TypeName(); +inline rdcliteral TypeName(); -#define DECLARE_STRINGISE_TYPE(type) \ - template <> \ - inline const char *TypeName() \ - { \ - return #type; \ +#define DECLARE_STRINGISE_TYPE(type) \ + template <> \ + inline rdcliteral TypeName() \ + { \ + return STRING_LITERAL(#type); \ } // This is a little bit ugly, but not *too* much. We declare the macro for serialised types to diff --git a/renderdoc/api/replay/structured_data.h b/renderdoc/api/replay/structured_data.h index b0e4c8234..af598ced6 100644 --- a/renderdoc/api/replay/structured_data.h +++ b/renderdoc/api/replay/structured_data.h @@ -161,7 +161,7 @@ struct SDChunk; DOCUMENT("Details the name and properties of a structured type"); struct SDType { - SDType(const char *n) + SDType(const rdcstr &n) : name(n), basetype(SDBasic::Struct), flags(SDTypeFlags::NoFlags), byteSize(0) { } @@ -339,7 +339,7 @@ DECLARE_REFLECTION_STRUCT(SDObjectData); DOCUMENT("Defines a single structured object."); struct SDObject { - SDObject(const char *n, const char *t) : type(t) + SDObject(const rdcstr &n, const rdcstr &t) : type(t) { name = n; data.basic.u = 0; @@ -553,7 +553,7 @@ DECLARE_REFLECTION_STRUCT(SDObject); #if defined(RENDERDOC_QT_COMPAT) inline SDObject *makeSDObject(const char *name, QVariant val) { - SDObject *ret = new SDObject(name, "QVariant"); + SDObject *ret = new SDObject(name, "QVariant"_lit); ret->type.basetype = SDBasic::Null; // coverity[mixed_enums] @@ -562,57 +562,57 @@ inline SDObject *makeSDObject(const char *name, QVariant val) switch(type) { case QMetaType::Bool: - ret->type.name = "bool"; + ret->type.name = "bool"_lit; ret->type.basetype = SDBasic::Boolean; ret->type.byteSize = 1; ret->data.basic.b = val.toBool(); break; case QMetaType::Short: - ret->type.name = "int16_t"; + ret->type.name = "int16_t"_lit; ret->type.basetype = SDBasic::SignedInteger; ret->type.byteSize = 2; ret->data.basic.i = val.toInt(); break; case QMetaType::UShort: - ret->type.name = "uint16_t"; + ret->type.name = "uint16_t"_lit; ret->type.basetype = SDBasic::UnsignedInteger; ret->type.byteSize = 2; ret->data.basic.u = val.toUInt(); break; case QMetaType::Long: case QMetaType::Int: - ret->type.name = "int32_t"; + ret->type.name = "int32_t"_lit; ret->type.basetype = SDBasic::SignedInteger; ret->type.byteSize = 4; ret->data.basic.i = val.toInt(); break; case QMetaType::ULong: case QMetaType::UInt: - ret->type.name = "uint32_t"; + ret->type.name = "uint32_t"_lit; ret->type.basetype = SDBasic::UnsignedInteger; ret->type.byteSize = 4; ret->data.basic.u = val.toUInt(); break; case QMetaType::LongLong: - ret->type.name = "int64_t"; + ret->type.name = "int64_t"_lit; ret->type.basetype = SDBasic::SignedInteger; ret->type.byteSize = 8; ret->data.basic.i = val.toLongLong(); break; case QMetaType::ULongLong: - ret->type.name = "uint64_t"; + ret->type.name = "uint64_t"_lit; ret->type.basetype = SDBasic::UnsignedInteger; ret->type.byteSize = 8; ret->data.basic.u = val.toULongLong(); break; case QMetaType::Float: - ret->type.name = "float"; + ret->type.name = "float"_lit; ret->type.basetype = SDBasic::Float; ret->type.byteSize = 4; ret->data.basic.d = val.toFloat(); break; case QMetaType::Double: - ret->type.name = "double"; + ret->type.name = "double"_lit; ret->type.basetype = SDBasic::Float; ret->type.byteSize = 8; ret->data.basic.d = val.toDouble(); @@ -620,13 +620,13 @@ inline SDObject *makeSDObject(const char *name, QVariant val) case QMetaType::UChar: case QMetaType::Char: case QMetaType::QChar: - ret->type.name = "char"; + ret->type.name = "char"_lit; ret->type.basetype = SDBasic::Character; ret->type.byteSize = 1; ret->data.basic.c = val.toChar().toLatin1(); break; case QMetaType::QString: - ret->type.name = "string"; + ret->type.name = "string"_lit; ret->type.basetype = SDBasic::String; ret->data.str = val.toString().toUtf8().data(); ret->type.byteSize = ret->data.str.size(); @@ -641,7 +641,7 @@ inline SDObject *makeSDObject(const char *name, QVariant val) DOCUMENT("Make a structured object out of a signed integer"); inline SDObject *makeSDInt64(const char *name, int64_t val) { - SDObject *ret = new SDObject(name, "int64_t"); + SDObject *ret = new SDObject(name, "int64_t"_lit); ret->type.basetype = SDBasic::SignedInteger; ret->type.byteSize = 8; ret->data.basic.i = val; @@ -651,7 +651,7 @@ inline SDObject *makeSDInt64(const char *name, int64_t val) DOCUMENT("Make a structured object out of an unsigned integer"); inline SDObject *makeSDUInt64(const char *name, uint64_t val) { - SDObject *ret = new SDObject(name, "uint64_t"); + SDObject *ret = new SDObject(name, "uint64_t"_lit); ret->type.basetype = SDBasic::UnsignedInteger; ret->type.byteSize = 8; ret->data.basic.u = val; @@ -661,7 +661,7 @@ inline SDObject *makeSDUInt64(const char *name, uint64_t val) DOCUMENT("Make a structured object out of a integer, stored as signed 32-bits"); inline SDObject *makeSDInt32(const char *name, int32_t val) { - SDObject *ret = new SDObject(name, "int32_t"); + SDObject *ret = new SDObject(name, "int32_t"_lit); ret->type.basetype = SDBasic::SignedInteger; ret->type.byteSize = 4; ret->data.basic.u = val; @@ -671,7 +671,7 @@ inline SDObject *makeSDInt32(const char *name, int32_t val) DOCUMENT("Make a structured object out of a integer, stored as unsigned 32-bits"); inline SDObject *makeSDUInt32(const char *name, uint32_t val) { - SDObject *ret = new SDObject(name, "uint32_t"); + SDObject *ret = new SDObject(name, "uint32_t"_lit); ret->type.basetype = SDBasic::UnsignedInteger; ret->type.byteSize = 4; ret->data.basic.u = val; @@ -681,7 +681,7 @@ inline SDObject *makeSDUInt32(const char *name, uint32_t val) DOCUMENT("Make a structured object out of a floating point value"); inline SDObject *makeSDFloat(const char *name, float val) { - SDObject *ret = new SDObject(name, "float"); + SDObject *ret = new SDObject(name, "float"_lit); ret->type.basetype = SDBasic::Float; ret->type.byteSize = 4; ret->data.basic.d = val; @@ -691,7 +691,7 @@ inline SDObject *makeSDFloat(const char *name, float val) DOCUMENT("Make a structured object out of a boolean value"); inline SDObject *makeSDBool(const char *name, bool val) { - SDObject *ret = new SDObject(name, "bool"); + SDObject *ret = new SDObject(name, "bool"_lit); ret->type.basetype = SDBasic::Boolean; ret->type.byteSize = 1; ret->data.basic.b = val; @@ -701,7 +701,7 @@ inline SDObject *makeSDBool(const char *name, bool val) DOCUMENT("Make a structured object out of a string"); inline SDObject *makeSDString(const char *name, const char *val) { - SDObject *ret = new SDObject(name, "string"); + SDObject *ret = new SDObject(name, "string"_lit); ret->type.basetype = SDBasic::String; ret->type.byteSize = strlen(val); ret->data.str = val; @@ -711,7 +711,7 @@ inline SDObject *makeSDString(const char *name, const char *val) DOCUMENT("Make a structured object out of a ResourceId"); inline SDObject *makeSDResourceId(const char *name, ResourceId val) { - SDObject *ret = new SDObject(name, "ResourceId"); + SDObject *ret = new SDObject(name, "ResourceId"_lit); ret->type.basetype = SDBasic::Resource; ret->type.byteSize = 8; ret->data.basic.id = val; @@ -721,7 +721,7 @@ inline SDObject *makeSDResourceId(const char *name, ResourceId val) DOCUMENT("Make a structured object out of an enumeration value"); inline SDObject *makeSDEnum(const char *name, uint32_t val) { - SDObject *ret = new SDObject(name, "enum"); + SDObject *ret = new SDObject(name, "enum"_lit); ret->type.basetype = SDBasic::Enum; ret->type.byteSize = 4; ret->data.basic.u = val; @@ -731,7 +731,7 @@ inline SDObject *makeSDEnum(const char *name, uint32_t val) DOCUMENT("Make an array-type structured object"); inline SDObject *makeSDArray(const char *name) { - SDObject *ret = new SDObject(name, "array"); + SDObject *ret = new SDObject(name, "array"_lit); ret->type.basetype = SDBasic::Array; return ret; } @@ -776,7 +776,7 @@ SDOBJECT_MAKER(ResourceId, makeSDResourceId); DOCUMENT("Defines a single structured chunk, which is a :class:`SDObject`."); struct SDChunk : public SDObject { - SDChunk(const char *name) : SDObject(name, "Chunk") { type.basetype = SDBasic::Chunk; } + SDChunk(const char *name) : SDObject(name, "Chunk"_lit) { type.basetype = SDBasic::Chunk; } DOCUMENT("The :class:`SDChunkMetaData` with the metadata for this chunk."); SDChunkMetaData metadata; diff --git a/renderdoc/core/core.cpp b/renderdoc/core/core.cpp index f5418aee8..3a98ca559 100644 --- a/renderdoc/core/core.cpp +++ b/renderdoc/core/core.cpp @@ -45,7 +45,7 @@ // this one is done by hand as we format it template <> -std::string DoStringise(const ResourceId &el) +rdcstr DoStringise(const ResourceId &el) { RDCCOMPILE_ASSERT(sizeof(el) == sizeof(uint64_t), "ResourceId is no longer 1:1 with uint64_t"); @@ -102,7 +102,7 @@ INSTANTIATE_SERIALISE_TYPE(ResourceId); ReplayStatus IMG_CreateReplayDevice(RDCFile *rdc, IReplayDriver **driver); template <> -std::string DoStringise(const RDCDriver &el) +rdcstr DoStringise(const RDCDriver &el) { BEGIN_ENUM_STRINGISE(RDCDriver); { @@ -122,7 +122,7 @@ std::string DoStringise(const RDCDriver &el) } template <> -std::string DoStringise(const ReplayLogType &el) +rdcstr DoStringise(const ReplayLogType &el) { BEGIN_ENUM_STRINGISE(ReplayLogType); { @@ -134,7 +134,7 @@ std::string DoStringise(const ReplayLogType &el) } template <> -std::string DoStringise(const VendorExtensions &el) +rdcstr DoStringise(const VendorExtensions &el) { BEGIN_ENUM_STRINGISE(VendorExtensions); { @@ -146,7 +146,7 @@ std::string DoStringise(const VendorExtensions &el) } template <> -std::string DoStringise(const RENDERDOC_InputButton &el) +rdcstr DoStringise(const RENDERDOC_InputButton &el) { char alphanumericbuf[2] = {'A', 0}; @@ -194,7 +194,7 @@ std::string DoStringise(const RENDERDOC_InputButton &el) } template <> -std::string DoStringise(const SystemChunk &el) +rdcstr DoStringise(const SystemChunk &el) { BEGIN_ENUM_STRINGISE(SystemChunk); { diff --git a/renderdoc/core/core.h b/renderdoc/core/core.h index af6612592..4442170a1 100644 --- a/renderdoc/core/core.h +++ b/renderdoc/core/core.h @@ -614,7 +614,7 @@ private: Threading::CriticalSection m_DriverLock; std::map m_ActiveDrivers; - std::map m_ProgressCallbacks; + std::map m_ProgressCallbacks; Threading::CriticalSection m_CaptureLock; vector m_Captures; diff --git a/renderdoc/core/replay_proxy.cpp b/renderdoc/core/replay_proxy.cpp index ec10d85c2..a00e1793e 100644 --- a/renderdoc/core/replay_proxy.cpp +++ b/renderdoc/core/replay_proxy.cpp @@ -28,7 +28,7 @@ #include "serialise/lz4io.h" template <> -std::string DoStringise(const ReplayProxyPacket &el) +rdcstr DoStringise(const ReplayProxyPacket &el) { BEGIN_ENUM_STRINGISE(ReplayProxyPacket); { @@ -114,24 +114,24 @@ std::string DoStringise(const ReplayProxyPacket &el) ser.BeginChunk(packet, 0); // end the set of parameters, and that chunk. -#define END_PARAMS() \ - { \ - GET_SERIALISER.Serialise("packet", packet); \ - ser.EndChunk(); \ - CheckError(packet, expectedPacket); \ +#define END_PARAMS() \ + { \ + GET_SERIALISER.Serialise("packet"_lit, packet); \ + ser.EndChunk(); \ + CheckError(packet, expectedPacket); \ } // begin serialising a return value. We begin a chunk here in either the writing or reading case // since this chunk is used purely to send/receive the return value and is fully handled within the // function. -#define SERIALISE_RETURN(retval) \ - { \ - ReturnSerialiser &ser = retser; \ - PACKET_HEADER(packet); \ - SERIALISE_ELEMENT(retval); \ - GET_SERIALISER.Serialise("packet", packet); \ - ser.EndChunk(); \ - CheckError(packet, expectedPacket); \ +#define SERIALISE_RETURN(retval) \ + { \ + ReturnSerialiser &ser = retser; \ + PACKET_HEADER(packet); \ + SERIALISE_ELEMENT(retval); \ + GET_SERIALISER.Serialise("packet"_lit, packet); \ + ser.EndChunk(); \ + CheckError(packet, expectedPacket); \ } // similar to the above, but for void functions that don't return anything. We still want to check @@ -1713,7 +1713,7 @@ void ReplayProxy::Proxied_FetchStructuredFile(ParamSerialiser ¶mser, ReturnS if(retser.IsReading()) file->chunks[c] = new SDChunk(""); - ser.Serialise("chunk", *file->chunks[c]); + ser.Serialise("chunk"_lit, *file->chunks[c]); } uint64_t bufferCount = file->buffers.size(); @@ -1729,7 +1729,7 @@ void ReplayProxy::Proxied_FetchStructuredFile(ParamSerialiser ¶mser, ReturnS bytebuf *buf = file->buffers[b]; - ser.Serialise("buffer", *buf); + ser.Serialise("buffer"_lit, *buf); } SERIALISE_ELEMENT(packet); @@ -1773,7 +1773,7 @@ void ReplayProxy::DeltaTransferBytes(SerialiserType &xferser, bytebuf &reference if(xferser.IsReading()) { uint64_t uncompSize = 0; - xferser.Serialise("uncompSize", uncompSize); + xferser.Serialise("uncompSize"_lit, uncompSize); if(uncompSize == 0) { @@ -1968,7 +1968,7 @@ void ReplayProxy::DeltaTransferBytes(SerialiserType &xferser, bytebuf &reference uncompSize = ser.GetWriter()->GetOffset() + ser.GetChunkAlignment(); } - xferser.Serialise("uncompSize", uncompSize); + xferser.Serialise("uncompSize"_lit, uncompSize); if(uncompSize > 0) { diff --git a/renderdoc/core/resource_manager.cpp b/renderdoc/core/resource_manager.cpp index 8833015af..2a03cdf45 100644 --- a/renderdoc/core/resource_manager.cpp +++ b/renderdoc/core/resource_manager.cpp @@ -54,7 +54,7 @@ void SetReplayResourceIDs() INSTANTIATE_SERIALISE_TYPE(ResourceManagerInternal::WrittenRecord); template <> -std::string DoStringise(const FrameRefType &el) +rdcstr DoStringise(const FrameRefType &el) { BEGIN_ENUM_STRINGISE(FrameRefType) { diff --git a/renderdoc/core/target_control.cpp b/renderdoc/core/target_control.cpp index 8be012782..dc72fbd9e 100644 --- a/renderdoc/core/target_control.cpp +++ b/renderdoc/core/target_control.cpp @@ -72,7 +72,7 @@ enum PacketType : uint32_t DECLARE_REFLECTION_ENUM(PacketType); template <> -std::string DoStringise(const PacketType &el) +rdcstr DoStringise(const PacketType &el) { BEGIN_ENUM_STRINGISE(PacketType); { @@ -688,7 +688,7 @@ public: else if(type == ePacket_Busy) { READ_DATA_SCOPE(); - SERIALISE_ELEMENT(msg.busy.clientName).Named("Client Name"); + SERIALISE_ELEMENT(msg.busy.clientName).Named("Client Name"_lit); SAFE_DELETE(m_Socket); @@ -701,8 +701,8 @@ public: msg.type = TargetControlMessageType::NewChild; READ_DATA_SCOPE(); - SERIALISE_ELEMENT(msg.newChild.processId).Named("PID"); - SERIALISE_ELEMENT(msg.newChild.ident).Named("Child ident"); + SERIALISE_ELEMENT(msg.newChild.processId).Named("PID"_lit); + SERIALISE_ELEMENT(msg.newChild.ident).Named("Child ident"_lit); RDCLOG("Got a new child process: %u %u", msg.newChild.processId, msg.newChild.ident); @@ -714,7 +714,7 @@ public: msg.type = TargetControlMessageType::CaptureProgress; READ_DATA_SCOPE(); - SERIALISE_ELEMENT(msg.capProgress).Named("Capture Progress"); + SERIALISE_ELEMENT(msg.capProgress).Named("Capture Progress"_lit); reader.EndChunk(); return msg; @@ -729,9 +729,9 @@ public: { READ_DATA_SCOPE(); - SERIALISE_ELEMENT(msg.newCapture.captureId).Named("Capture ID"); - SERIALISE_ELEMENT(msg.newCapture.timestamp).Named("timestamp"); - SERIALISE_ELEMENT(msg.newCapture.path).Named("path"); + SERIALISE_ELEMENT(msg.newCapture.captureId).Named("Capture ID"_lit); + SERIALISE_ELEMENT(msg.newCapture.timestamp).Named("timestamp"_lit); + SERIALISE_ELEMENT(msg.newCapture.path).Named("path"_lit); SERIALISE_ELEMENT(thumbnail); if(m_Version >= 3) SERIALISE_ELEMENT(driver); @@ -809,7 +809,7 @@ public: msg.type = TargetControlMessageType::CaptureCopied; READ_DATA_SCOPE(); - SERIALISE_ELEMENT(msg.newCapture.captureId).Named("Capture ID"); + SERIALISE_ELEMENT(msg.newCapture.captureId).Named("Capture ID"_lit); msg.newCapture.path = m_CaptureCopies[msg.newCapture.captureId]; diff --git a/renderdoc/driver/d3d11/d3d11_context.cpp b/renderdoc/driver/d3d11/d3d11_context.cpp index 113d0f7d2..79bc558bf 100644 --- a/renderdoc/driver/d3d11/d3d11_context.cpp +++ b/renderdoc/driver/d3d11/d3d11_context.cpp @@ -538,7 +538,7 @@ void WrappedID3D11DeviceContext::EndCaptureFrame() ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(SystemChunk::CaptureEnd); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); m_ContextRecord->AddChunk(scope.Get()); } @@ -547,7 +547,7 @@ void WrappedID3D11DeviceContext::Present(UINT SyncInterval, UINT Flags) { WriteSerialiser &ser = m_ScratchSerialiser; SCOPED_SERIALISE_CHUNK(D3D11Chunk::SwapchainPresent); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); SERIALISE_ELEMENT(SyncInterval); SERIALISE_ELEMENT(Flags); @@ -643,7 +643,7 @@ bool WrappedID3D11DeviceContext::IsFL11_1() bool WrappedID3D11DeviceContext::ProcessChunk(ReadSerialiser &ser, D3D11Chunk chunk) { - SERIALISE_ELEMENT(m_CurContextId).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_CurContextId).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d11/d3d11_context1_wrap.cpp b/renderdoc/driver/d3d11/d3d11_context1_wrap.cpp index 41e433f89..3858e17b1 100644 --- a/renderdoc/driver/d3d11/d3d11_context1_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_context1_wrap.cpp @@ -373,7 +373,7 @@ void WrappedID3D11DeviceContext::UpdateSubresource1(ID3D11Resource *pDstResource { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::UpdateSubresource1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_UpdateSubresource1(ser, pDstResource, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch, CopyFlags); @@ -459,7 +459,7 @@ void WrappedID3D11DeviceContext::CopySubresourceRegion1(ID3D11Resource *pDstReso { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CopySubresourceRegion1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CopySubresourceRegion1(ser, pDstResource, DstSubresource, DstX, DstY, DstZ, pSrcResource, SrcSubresource, pSrcBox, CopyFlags); @@ -615,7 +615,7 @@ void WrappedID3D11DeviceContext::ClearView(ID3D11View *pView, const FLOAT Color[ USE_SCRATCH_SERIALISER(); ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ClearView); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ClearView(ser, pView, Color, pRect, NumRects); ID3D11Resource *viewRes = NULL; @@ -732,7 +732,7 @@ void WrappedID3D11DeviceContext::VSSetConstantBuffers1(UINT StartSlot, UINT NumB { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::VSSetConstantBuffers1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_VSSetConstantBuffers1(ser, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants); @@ -863,7 +863,7 @@ void WrappedID3D11DeviceContext::HSSetConstantBuffers1(UINT StartSlot, UINT NumB { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::HSSetConstantBuffers1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_HSSetConstantBuffers1(ser, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants); @@ -994,7 +994,7 @@ void WrappedID3D11DeviceContext::DSSetConstantBuffers1(UINT StartSlot, UINT NumB { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DSSetConstantBuffers1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DSSetConstantBuffers1(ser, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants); @@ -1125,7 +1125,7 @@ void WrappedID3D11DeviceContext::GSSetConstantBuffers1(UINT StartSlot, UINT NumB { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::GSSetConstantBuffers1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_GSSetConstantBuffers1(ser, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants); @@ -1256,7 +1256,7 @@ void WrappedID3D11DeviceContext::PSSetConstantBuffers1(UINT StartSlot, UINT NumB { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PSSetConstantBuffers1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PSSetConstantBuffers1(ser, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants); @@ -1387,7 +1387,7 @@ void WrappedID3D11DeviceContext::CSSetConstantBuffers1(UINT StartSlot, UINT NumB { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CSSetConstantBuffers1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CSSetConstantBuffers1(ser, StartSlot, NumBuffers, ppConstantBuffers, pFirstConstant, pNumConstants); @@ -1765,7 +1765,7 @@ void WrappedID3D11DeviceContext::DiscardResource(ID3D11Resource *pResource) USE_SCRATCH_SERIALISER(); ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DiscardResource); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DiscardResource(ser, pResource); MarkDirtyResource(GetIDForResource(pResource)); @@ -1918,7 +1918,7 @@ void WrappedID3D11DeviceContext::DiscardView(ID3D11View *pResourceView) USE_SCRATCH_SERIALISER(); ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DiscardView); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DiscardView(ser, pResourceView); ID3D11Resource *viewRes = NULL; @@ -2086,7 +2086,7 @@ void WrappedID3D11DeviceContext::DiscardView1(ID3D11View *pResourceView, const D USE_SCRATCH_SERIALISER(); ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DiscardView1); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DiscardView1(ser, pResourceView, pRects, NumRects); ID3D11Resource *viewRes = NULL; @@ -2125,7 +2125,7 @@ bool WrappedID3D11DeviceContext::Serialise_SwapDeviceContextState( state.MarkReferenced(this, true); } - SERIALISE_ELEMENT(state).Named("pState"); + SERIALISE_ELEMENT(state).Named("pState"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2192,7 +2192,7 @@ void WrappedID3D11DeviceContext::SwapDeviceContextState(ID3DDeviceContextState * { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::SwapDeviceContextState); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_SwapDeviceContextState(ser, pState, NULL); m_ContextRecord->AddChunk(scope.Get()); diff --git a/renderdoc/driver/d3d11/d3d11_context_wrap.cpp b/renderdoc/driver/d3d11/d3d11_context_wrap.cpp index 36fbeec8e..6455771da 100644 --- a/renderdoc/driver/d3d11/d3d11_context_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_context_wrap.cpp @@ -146,7 +146,7 @@ void WrappedID3D11DeviceContext::SetMarker(uint32_t Color, const wchar_t *Marker USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::SetMarker); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_SetMarker(GET_SERIALISER, Color, MarkerName); m_ContextRecord->AddChunk(scope.Get()); @@ -162,7 +162,7 @@ int WrappedID3D11DeviceContext::PushMarker(uint32_t Color, const wchar_t *Marker USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PushMarker); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PushMarker(GET_SERIALISER, Color, MarkerName); m_ContextRecord->AddChunk(scope.Get()); @@ -180,7 +180,7 @@ int WrappedID3D11DeviceContext::PopMarker() USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PopMarker); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PopMarker(GET_SERIALISER); m_ContextRecord->AddChunk(scope.Get()); @@ -377,7 +377,7 @@ void WrappedID3D11DeviceContext::IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::IASetPrimitiveTopology); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_IASetPrimitiveTopology(GET_SERIALISER, Topology); m_ContextRecord->AddChunk(scope.Get()); @@ -423,7 +423,7 @@ void WrappedID3D11DeviceContext::IASetInputLayout(ID3D11InputLayout *pInputLayou { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::IASetInputLayout); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_IASetInputLayout(GET_SERIALISER, pInputLayout); MarkResourceReferenced(GetIDForResource(pInputLayout), eFrameRef_Read); @@ -498,7 +498,7 @@ void WrappedID3D11DeviceContext::IASetVertexBuffers(UINT StartSlot, UINT NumBuff { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::IASetVertexBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_IASetVertexBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppVertexBuffers, pStrides, pOffsets); @@ -555,7 +555,7 @@ void WrappedID3D11DeviceContext::IASetIndexBuffer(ID3D11Buffer *pIndexBuffer, DX { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::IASetIndexBuffer); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_IASetIndexBuffer(GET_SERIALISER, pIndexBuffer, Format, Offset); m_ContextRecord->AddChunk(scope.Get()); @@ -740,7 +740,7 @@ void WrappedID3D11DeviceContext::VSSetConstantBuffers(UINT StartSlot, UINT NumBu { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::VSSetConstantBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_VSSetConstantBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppConstantBuffers); m_ContextRecord->AddChunk(scope.Get()); @@ -813,7 +813,7 @@ void WrappedID3D11DeviceContext::VSSetShaderResources( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::VSSetShaderResources); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_VSSetShaderResources(GET_SERIALISER, StartSlot, NumViews, ppShaderResourceViews); m_ContextRecord->AddChunk(scope.Get()); @@ -879,7 +879,7 @@ void WrappedID3D11DeviceContext::VSSetSamplers(UINT StartSlot, UINT NumSamplers, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::VSSetSamplers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_VSSetSamplers(GET_SERIALISER, StartSlot, NumSamplers, ppSamplers); m_ContextRecord->AddChunk(scope.Get()); @@ -948,7 +948,7 @@ void WrappedID3D11DeviceContext::VSSetShader(ID3D11VertexShader *pVertexShader, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::VSSetShader); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_VSSetShader(GET_SERIALISER, pVertexShader, ppClassInstances, NumClassInstances); MarkResourceReferenced(GetIDForResource(pVertexShader), eFrameRef_Read); @@ -1135,7 +1135,7 @@ void WrappedID3D11DeviceContext::HSSetConstantBuffers(UINT StartSlot, UINT NumBu { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::HSSetConstantBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_HSSetConstantBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppConstantBuffers); m_ContextRecord->AddChunk(scope.Get()); @@ -1208,7 +1208,7 @@ void WrappedID3D11DeviceContext::HSSetShaderResources( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::HSSetShaderResources); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_HSSetShaderResources(GET_SERIALISER, StartSlot, NumViews, ppShaderResourceViews); m_ContextRecord->AddChunk(scope.Get()); @@ -1274,7 +1274,7 @@ void WrappedID3D11DeviceContext::HSSetSamplers(UINT StartSlot, UINT NumSamplers, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::HSSetSamplers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_HSSetSamplers(GET_SERIALISER, StartSlot, NumSamplers, ppSamplers); m_ContextRecord->AddChunk(scope.Get()); @@ -1342,7 +1342,7 @@ void WrappedID3D11DeviceContext::HSSetShader(ID3D11HullShader *pHullShader, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::HSSetShader); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_HSSetShader(GET_SERIALISER, pHullShader, ppClassInstances, NumClassInstances); MarkResourceReferenced(GetIDForResource(pHullShader), eFrameRef_Read); @@ -1529,7 +1529,7 @@ void WrappedID3D11DeviceContext::DSSetConstantBuffers(UINT StartSlot, UINT NumBu { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DSSetConstantBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DSSetConstantBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppConstantBuffers); m_ContextRecord->AddChunk(scope.Get()); @@ -1602,7 +1602,7 @@ void WrappedID3D11DeviceContext::DSSetShaderResources( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DSSetShaderResources); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DSSetShaderResources(GET_SERIALISER, StartSlot, NumViews, ppShaderResourceViews); m_ContextRecord->AddChunk(scope.Get()); @@ -1668,7 +1668,7 @@ void WrappedID3D11DeviceContext::DSSetSamplers(UINT StartSlot, UINT NumSamplers, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DSSetSamplers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DSSetSamplers(GET_SERIALISER, StartSlot, NumSamplers, ppSamplers); m_ContextRecord->AddChunk(scope.Get()); @@ -1737,7 +1737,7 @@ void WrappedID3D11DeviceContext::DSSetShader(ID3D11DomainShader *pDomainShader, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DSSetShader); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DSSetShader(GET_SERIALISER, pDomainShader, ppClassInstances, NumClassInstances); MarkResourceReferenced(GetIDForResource(pDomainShader), eFrameRef_Read); @@ -1925,7 +1925,7 @@ void WrappedID3D11DeviceContext::GSSetConstantBuffers(UINT StartSlot, UINT NumBu { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::GSSetConstantBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_GSSetConstantBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppConstantBuffers); m_ContextRecord->AddChunk(scope.Get()); @@ -1998,7 +1998,7 @@ void WrappedID3D11DeviceContext::GSSetShaderResources( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::GSSetShaderResources); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_GSSetShaderResources(GET_SERIALISER, StartSlot, NumViews, ppShaderResourceViews); m_ContextRecord->AddChunk(scope.Get()); @@ -2064,7 +2064,7 @@ void WrappedID3D11DeviceContext::GSSetSamplers(UINT StartSlot, UINT NumSamplers, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::GSSetSamplers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_GSSetSamplers(GET_SERIALISER, StartSlot, NumSamplers, ppSamplers); m_ContextRecord->AddChunk(scope.Get()); @@ -2133,7 +2133,7 @@ void WrappedID3D11DeviceContext::GSSetShader(ID3D11GeometryShader *pShader, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::GSSetShader); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_GSSetShader(GET_SERIALISER, pShader, ppClassInstances, NumClassInstances); MarkResourceReferenced(GetIDForResource(pShader), eFrameRef_Read); @@ -2287,7 +2287,7 @@ void WrappedID3D11DeviceContext::SOSetTargets(UINT NumBuffers, ID3D11Buffer *con { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::SOSetTargets); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_SOSetTargets(GET_SERIALISER, NumBuffers, ppSOTargets, pOffsets); m_ContextRecord->AddChunk(scope.Get()); @@ -2443,7 +2443,7 @@ void WrappedID3D11DeviceContext::RSSetViewports(UINT NumViewports, const D3D11_V { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::RSSetViewports); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_RSSetViewports(GET_SERIALISER, NumViewports, pViewports); m_ContextRecord->AddChunk(scope.Get()); @@ -2491,7 +2491,7 @@ void WrappedID3D11DeviceContext::RSSetScissorRects(UINT NumRects, const D3D11_RE { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::RSSetScissorRects); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_RSSetScissorRects(GET_SERIALISER, NumRects, pRects); m_ContextRecord->AddChunk(scope.Get()); @@ -2538,7 +2538,7 @@ void WrappedID3D11DeviceContext::RSSetState(ID3D11RasterizerState *pRasterizerSt { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::RSSetState); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_RSSetState(GET_SERIALISER, pRasterizerState); MarkResourceReferenced(GetIDForResource(pRasterizerState), eFrameRef_Read); @@ -2721,7 +2721,7 @@ void WrappedID3D11DeviceContext::PSSetConstantBuffers(UINT StartSlot, UINT NumBu { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PSSetConstantBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PSSetConstantBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppConstantBuffers); m_ContextRecord->AddChunk(scope.Get()); @@ -2794,7 +2794,7 @@ void WrappedID3D11DeviceContext::PSSetShaderResources( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PSSetShaderResources); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PSSetShaderResources(GET_SERIALISER, StartSlot, NumViews, ppShaderResourceViews); m_ContextRecord->AddChunk(scope.Get()); @@ -2860,7 +2860,7 @@ void WrappedID3D11DeviceContext::PSSetSamplers(UINT StartSlot, UINT NumSamplers, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PSSetSamplers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PSSetSamplers(GET_SERIALISER, StartSlot, NumSamplers, ppSamplers); m_ContextRecord->AddChunk(scope.Get()); @@ -2929,7 +2929,7 @@ void WrappedID3D11DeviceContext::PSSetShader(ID3D11PixelShader *pPixelShader, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PSSetShader); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PSSetShader(GET_SERIALISER, pPixelShader, ppClassInstances, NumClassInstances); MarkResourceReferenced(GetIDForResource(pPixelShader), eFrameRef_Read); @@ -3172,7 +3172,7 @@ void WrappedID3D11DeviceContext::OMSetRenderTargets(UINT NumViews, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::OMSetRenderTargets); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_OMSetRenderTargets(GET_SERIALISER, NumViews, ppRenderTargetViews, pDepthStencilView); m_ContextRecord->AddChunk(scope.Get()); @@ -3247,7 +3247,7 @@ enum D3D11RTVCount DECLARE_REFLECTION_ENUM(D3D11RTVCount); template <> -std::string DoStringise(const D3D11RTVCount &el) +rdcstr DoStringise(const D3D11RTVCount &el) { RDCCOMPILE_ASSERT(sizeof(D3D11RTVCount) == sizeof(uint32_t), "Enum isn't uint sized"); @@ -3264,7 +3264,7 @@ enum D3D11UAVCount DECLARE_REFLECTION_ENUM(D3D11UAVCount); template <> -std::string DoStringise(const D3D11UAVCount &el) +rdcstr DoStringise(const D3D11UAVCount &el) { RDCCOMPILE_ASSERT(sizeof(D3D11UAVCount) == sizeof(uint32_t), "Enum isn't uint sized"); @@ -3481,7 +3481,7 @@ void WrappedID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::OMSetRenderTargetsAndUnorderedAccessViews); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_OMSetRenderTargetsAndUnorderedAccessViews(GET_SERIALISER, NumRTVs, ppRenderTargetViews, pDepthStencilView, UAVStartSlot, NumUAVs, ppUnorderedAccessViews, pUAVInitialCounts); @@ -3667,7 +3667,7 @@ void WrappedID3D11DeviceContext::OMSetBlendState(ID3D11BlendState *pBlendState, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::OMSetBlendState); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_OMSetBlendState(GET_SERIALISER, pBlendState, BlendFactor, SampleMask); MarkResourceReferenced(GetIDForResource(pBlendState), eFrameRef_Read); @@ -3728,7 +3728,7 @@ void WrappedID3D11DeviceContext::OMSetDepthStencilState(ID3D11DepthStencilState { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::OMSetDepthStencilState); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_OMSetDepthStencilState(GET_SERIALISER, pDepthStencilState, StencilRef); MarkResourceReferenced(GetIDForResource(pDepthStencilState), eFrameRef_Read); @@ -3841,7 +3841,7 @@ void WrappedID3D11DeviceContext::DrawIndexedInstanced(UINT IndexCountPerInstance USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DrawIndexedInstanced); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DrawIndexedInstanced(GET_SERIALISER, IndexCountPerInstance, InstanceCount, StartIndexLocation, BaseVertexLocation, StartInstanceLocation); @@ -3912,7 +3912,7 @@ void WrappedID3D11DeviceContext::DrawInstanced(UINT VertexCountPerInstance, UINT USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DrawInstanced); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DrawInstanced(GET_SERIALISER, VertexCountPerInstance, InstanceCount, StartVertexLocation, StartInstanceLocation); @@ -3978,7 +3978,7 @@ void WrappedID3D11DeviceContext::DrawIndexed(UINT IndexCount, UINT StartIndexLoc USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DrawIndexed); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DrawIndexed(GET_SERIALISER, IndexCount, StartIndexLocation, BaseVertexLocation); m_ContextRecord->AddChunk(scope.Get()); @@ -4039,7 +4039,7 @@ void WrappedID3D11DeviceContext::Draw(UINT VertexCount, UINT StartVertexLocation USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Draw); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Draw(GET_SERIALISER, VertexCount, StartVertexLocation); m_ContextRecord->AddChunk(scope.Get()); @@ -4152,7 +4152,7 @@ void WrappedID3D11DeviceContext::DrawAuto() USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DrawAuto); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DrawAuto(GET_SERIALISER); m_ContextRecord->AddChunk(scope.Get()); @@ -4280,7 +4280,7 @@ void WrappedID3D11DeviceContext::DrawIndexedInstancedIndirect(ID3D11Buffer *pBuf USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DrawIndexedInstancedIndirect); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DrawIndexedInstancedIndirect(GET_SERIALISER, pBufferForArgs, AlignedByteOffsetForArgs); m_ContextRecord->AddChunk(scope.Get()); @@ -4408,7 +4408,7 @@ void WrappedID3D11DeviceContext::DrawInstancedIndirect(ID3D11Buffer *pBufferForA USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DrawInstancedIndirect); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DrawInstancedIndirect(GET_SERIALISER, pBufferForArgs, AlignedByteOffsetForArgs); m_ContextRecord->AddChunk(scope.Get()); @@ -4612,7 +4612,7 @@ void WrappedID3D11DeviceContext::CSSetConstantBuffers(UINT StartSlot, UINT NumBu { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CSSetConstantBuffers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CSSetConstantBuffers(GET_SERIALISER, StartSlot, NumBuffers, ppConstantBuffers); m_ContextRecord->AddChunk(scope.Get()); @@ -4685,7 +4685,7 @@ void WrappedID3D11DeviceContext::CSSetShaderResources( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CSSetShaderResources); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CSSetShaderResources(GET_SERIALISER, StartSlot, NumViews, ppShaderResourceViews); m_ContextRecord->AddChunk(scope.Get()); @@ -4763,7 +4763,7 @@ void WrappedID3D11DeviceContext::CSSetUnorderedAccessViews( { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CSSetUnorderedAccessViews); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CSSetUnorderedAccessViews(GET_SERIALISER, StartSlot, NumUAVs, ppUnorderedAccessViews, pUAVInitialCounts); @@ -4830,7 +4830,7 @@ void WrappedID3D11DeviceContext::CSSetSamplers(UINT StartSlot, UINT NumSamplers, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CSSetSamplers); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CSSetSamplers(GET_SERIALISER, StartSlot, NumSamplers, ppSamplers); m_ContextRecord->AddChunk(scope.Get()); @@ -4899,7 +4899,7 @@ void WrappedID3D11DeviceContext::CSSetShader(ID3D11ComputeShader *pComputeShader { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CSSetShader); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CSSetShader(GET_SERIALISER, pComputeShader, ppClassInstances, NumClassInstances); MarkResourceReferenced(GetIDForResource(pComputeShader), eFrameRef_Read); @@ -4993,7 +4993,7 @@ void WrappedID3D11DeviceContext::Dispatch(UINT ThreadGroupCountX, UINT ThreadGro USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Dispatch); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Dispatch(GET_SERIALISER, ThreadGroupCountX, ThreadGroupCountY, ThreadGroupCountZ); m_ContextRecord->AddChunk(scope.Get()); @@ -5114,7 +5114,7 @@ void WrappedID3D11DeviceContext::DispatchIndirect(ID3D11Buffer *pBufferForArgs, USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::DispatchIndirect); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_DispatchIndirect(GET_SERIALISER, pBufferForArgs, AlignedByteOffsetForArgs); m_ContextRecord->AddChunk(scope.Get()); @@ -5136,7 +5136,7 @@ bool WrappedID3D11DeviceContext::Serialise_ExecuteCommandList(SerialiserType &se BOOL RestoreContextState_) { SERIALISE_ELEMENT_LOCAL(CommandList, GetIDForResource(pCommandList)) - .TypedAs("ID3D11CommandList *"); + .TypedAs("ID3D11CommandList *"_lit); SERIALISE_ELEMENT_LOCAL(RestoreContextState, bool(RestoreContextState_ == TRUE)); Serialise_DebugMessages(GET_SERIALISER); @@ -5178,7 +5178,7 @@ bool WrappedID3D11DeviceContext::Serialise_PostExecuteCommandList(SerialiserType BOOL RestoreContextState_) { SERIALISE_ELEMENT_LOCAL(CommandList, GetIDForResource(pCommandList)) - .TypedAs("ID3D11CommandList *"); + .TypedAs("ID3D11CommandList *"_lit); SERIALISE_ELEMENT_LOCAL(RestoreContextState, bool(RestoreContextState_ == TRUE)); // this is a 'fake' call we insert after executing, to give us a chance to restore the state. @@ -5226,7 +5226,7 @@ void WrappedID3D11DeviceContext::ExecuteCommandList(ID3D11CommandList *pCommandL USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ExecuteCommandList); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ExecuteCommandList(GET_SERIALISER, pCommandList, RestoreContextState); m_ContextRecord->AddChunk(scope.Get()); } @@ -5261,7 +5261,7 @@ void WrappedID3D11DeviceContext::ExecuteCommandList(ID3D11CommandList *pCommandL // chunks and we can restore the state USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PostExecuteCommandList); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PostExecuteCommandList(GET_SERIALISER, pCommandList, RestoreContextState); m_ContextRecord->AddChunk(scope.Get()); } @@ -5288,7 +5288,7 @@ bool WrappedID3D11DeviceContext::Serialise_FinishCommandList(SerialiserType &ser { SERIALISE_ELEMENT_LOCAL(RestoreDeferredContextState, bool(RestoreDeferredContextState_ == TRUE)); SERIALISE_ELEMENT_LOCAL(pCommandList, GetIDForResource(*ppCommandList)) - .TypedAs("ID3D11CommandList *"); + .TypedAs("ID3D11CommandList *"_lit); Serialise_DebugMessages(GET_SERIALISER); @@ -5320,11 +5320,11 @@ bool WrappedID3D11DeviceContext::Serialise_PostFinishCommandListSet(SerialiserTy ID3D11CommandList *pCommandList) { SERIALISE_ELEMENT_LOCAL(CommandList, GetIDForResource(pCommandList)) - .TypedAs("ID3D11CommandList *"); + .TypedAs("ID3D11CommandList *"_lit); D3D11RenderState RenderState(*m_CurrentPipelineState); - SERIALISE_ELEMENT(RenderState).Named("Initial Pipeline State"); + SERIALISE_ELEMENT(RenderState).Named("Initial Pipeline State"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -5395,7 +5395,7 @@ HRESULT WrappedID3D11DeviceContext::FinishCommandList(BOOL RestoreDeferredContex USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::FinishCommandList); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_FinishCommandList(GET_SERIALISER, RestoreDeferredContextState, &w); m_ContextRecord->AddChunk(scope.Get()); } @@ -5453,7 +5453,7 @@ HRESULT WrappedID3D11DeviceContext::FinishCommandList(BOOL RestoreDeferredContex { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::PostFinishCommandListSet); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_PostFinishCommandListSet(GET_SERIALISER, wrapped); m_ContextRecord->AddChunk(scope.Get()); } @@ -5518,7 +5518,7 @@ void WrappedID3D11DeviceContext::Flush() { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Flush); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Flush(GET_SERIALISER); m_ContextRecord->AddChunk(scope.Get()); @@ -5617,7 +5617,7 @@ void WrappedID3D11DeviceContext::CopySubresourceRegion(ID3D11Resource *pDstResou USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CopySubresourceRegion); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CopySubresourceRegion(GET_SERIALISER, pDstResource, DstSubresource, DstX, DstY, DstZ, pSrcResource, SrcSubresource, pSrcBox); @@ -5763,7 +5763,7 @@ void WrappedID3D11DeviceContext::CopyResource(ID3D11Resource *pDstResource, USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CopyResource); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CopyResource(GET_SERIALISER, pDstResource, pSrcResource); D3D11ResourceRecord *record = @@ -5834,7 +5834,7 @@ void WrappedID3D11DeviceContext::CopyResource(ID3D11Resource *pDstResource, // can't copy without data allocated USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CopyResource); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CopyResource(GET_SERIALISER, pDstResource, pSrcResource); record->AddChunk(scope.Get()); @@ -5926,7 +5926,7 @@ void WrappedID3D11DeviceContext::UpdateSubresource(ID3D11Resource *pDstResource, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::UpdateSubresource); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_UpdateSubresource(GET_SERIALISER, pDstResource, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch); @@ -5979,7 +5979,7 @@ void WrappedID3D11DeviceContext::UpdateSubresource(ID3D11Resource *pDstResource, { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::UpdateSubresource); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_UpdateSubresource(GET_SERIALISER, pDstResource, DstSubresource, pDstBox, pSrcData, SrcRowPitch, SrcDepthPitch); @@ -6206,7 +6206,7 @@ void WrappedID3D11DeviceContext::CopyStructureCount(ID3D11Buffer *pDstBuffer, USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::CopyStructureCount); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_CopyStructureCount(GET_SERIALISER, pDstBuffer, DstAlignedByteOffset, pSrcView); m_ContextRecord->AddChunk(scope.Get()); @@ -6320,7 +6320,7 @@ void WrappedID3D11DeviceContext::ResolveSubresource(ID3D11Resource *pDstResource USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ResolveSubresource); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ResolveSubresource(GET_SERIALISER, pDstResource, DstSubresource, pSrcResource, SrcSubresource, Format); @@ -6399,7 +6399,7 @@ void WrappedID3D11DeviceContext::GenerateMips(ID3D11ShaderResourceView *pShaderR USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::GenerateMips); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_GenerateMips(GET_SERIALISER, pShaderResourceView); m_ContextRecord->AddChunk(scope.Get()); @@ -6448,7 +6448,7 @@ void WrappedID3D11DeviceContext::ClearState() USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ClearState); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ClearState(GET_SERIALISER); m_ContextRecord->AddChunk(scope.Get()); @@ -6523,7 +6523,7 @@ void WrappedID3D11DeviceContext::ClearRenderTargetView(ID3D11RenderTargetView *p USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ClearRenderTargetView); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ClearRenderTargetView(GET_SERIALISER, pRenderTargetView, ColorRGBA); if(pRenderTargetView) @@ -6603,7 +6603,7 @@ void WrappedID3D11DeviceContext::ClearUnorderedAccessViewUint( USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ClearUnorderedAccessViewUint); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ClearUnorderedAccessViewUint(GET_SERIALISER, pUnorderedAccessView, Values); if(pUnorderedAccessView) @@ -6683,7 +6683,7 @@ void WrappedID3D11DeviceContext::ClearUnorderedAccessViewFloat( USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ClearUnorderedAccessViewFloat); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ClearUnorderedAccessViewFloat(GET_SERIALISER, pUnorderedAccessView, Values); if(pUnorderedAccessView) @@ -6776,7 +6776,7 @@ void WrappedID3D11DeviceContext::ClearDepthStencilView(ID3D11DepthStencilView *p USE_SCRATCH_SERIALISER(); GET_SERIALISER.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::ClearDepthStencilView); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_ClearDepthStencilView(GET_SERIALISER, pDepthStencilView, ClearFlags, Depth, Stencil); if(pDepthStencilView) @@ -6858,7 +6858,7 @@ void WrappedID3D11DeviceContext::Begin(ID3D11Asynchronous *pAsync) { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Begin); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Begin(GET_SERIALISER, pAsync); m_ContextRecord->AddChunk(scope.Get()); @@ -6926,7 +6926,7 @@ void WrappedID3D11DeviceContext::End(ID3D11Asynchronous *pAsync) { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::End); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_End(GET_SERIALISER, pAsync); m_ContextRecord->AddChunk(scope.Get()); @@ -7001,7 +7001,7 @@ void WrappedID3D11DeviceContext::SetPredication(ID3D11Predicate *pPredicate, BOO { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::SetPredication); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_SetPredication(GET_SERIALISER, pPredicate, PredicateValue); m_ContextRecord->AddChunk(scope.Get()); @@ -7051,7 +7051,7 @@ void WrappedID3D11DeviceContext::SetResourceMinLOD(ID3D11Resource *pResource, FL { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::SetResourceMinLOD); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_SetResourceMinLOD(GET_SERIALISER, pResource, MinLOD); m_ContextRecord->AddChunk(scope.Get()); @@ -7581,7 +7581,7 @@ HRESULT WrappedID3D11DeviceContext::Map(ID3D11Resource *pResource, UINT Subresou // create a chunk purely for the user's benefit USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Map); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Map(GET_SERIALISER, pResource, Subresource, MapType, MapFlags, pMappedResource); m_ContextRecord->AddChunk(scope.Get()); @@ -7772,11 +7772,11 @@ bool WrappedID3D11DeviceContext::Serialise_Unmap(SerialiserType &ser, ID3D11Reso if(SerialiseMap) { - SERIALISE_ELEMENT(intercept.MapType).Named("MapType"); - SERIALISE_ELEMENT_TYPED(D3D11_MAP_FLAG, intercept.MapFlags).Named("MapFlags"); + SERIALISE_ELEMENT(intercept.MapType).Named("MapType"_lit); + SERIALISE_ELEMENT_TYPED(D3D11_MAP_FLAG, intercept.MapFlags).Named("MapFlags"_lit); - SERIALISE_ELEMENT(diffStart).Named("Byte offset to start of written data"); - SERIALISE_ELEMENT(diffEnd).Named("Byte offset to end of written data"); + SERIALISE_ELEMENT(diffStart).Named("Byte offset to start of written data"_lit); + SERIALISE_ELEMENT(diffEnd).Named("Byte offset to end of written data"_lit); SERIALISE_ELEMENT_ARRAY(MapWrittenData, len); @@ -7933,7 +7933,7 @@ void WrappedID3D11DeviceContext::Unmap(ID3D11Resource *pResource, UINT Subresour USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Unmap); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Unmap(GET_SERIALISER, pResource, Subresource); m_ContextRecord->AddChunk(scope.Get()); @@ -7965,7 +7965,7 @@ void WrappedID3D11DeviceContext::Unmap(ID3D11Resource *pResource, UINT Subresour { USE_SCRATCH_SERIALISER(); SCOPED_SERIALISE_CHUNK(D3D11Chunk::Unmap); - SERIALISE_ELEMENT(m_ResourceID).Named("Context").TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT(m_ResourceID).Named("Context"_lit).TypedAs("ID3D11DeviceContext *"_lit); Serialise_Unmap(GET_SERIALISER, pResource, Subresource); Chunk *chunk = scope.Get(); diff --git a/renderdoc/driver/d3d11/d3d11_device.cpp b/renderdoc/driver/d3d11/d3d11_device.cpp index 5895533c7..c4553503d 100644 --- a/renderdoc/driver/d3d11/d3d11_device.cpp +++ b/renderdoc/driver/d3d11/d3d11_device.cpp @@ -880,7 +880,7 @@ bool WrappedID3D11Device::ProcessChunk(ReadSerialiser &ser, D3D11Chunk context) { case D3D11Chunk::DeviceInitialisation: { - SERIALISE_ELEMENT_LOCAL(ImmediateContext, ResourceId()).TypedAs("ID3D11DeviceContext *"); + SERIALISE_ELEMENT_LOCAL(ImmediateContext, ResourceId()).TypedAs("ID3D11DeviceContext *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1317,7 +1317,7 @@ bool WrappedID3D11Device::Serialise_WrapSwapchainBuffer(SerialiserType &ser, WrappedID3D11Texture2D1 *pTex = (WrappedID3D11Texture2D1 *)realSurface; SERIALISE_ELEMENT(Buffer); - SERIALISE_ELEMENT_LOCAL(SwapbufferID, pTex->GetResourceID()).TypedAs("IDXGISwapChain *"); + SERIALISE_ELEMENT_LOCAL(SwapbufferID, pTex->GetResourceID()).TypedAs("IDXGISwapChain *"_lit); m_BBID = SwapbufferID; @@ -1735,7 +1735,7 @@ bool WrappedID3D11Device::EndFrameCapture(void *dev, void *wnd) SCOPED_SERIALISE_CHUNK(D3D11Chunk::DeviceInitialisation, 16); SERIALISE_ELEMENT_LOCAL(ImmediateContext, m_pImmediateContext->GetResourceID()) - .TypedAs("ID3D11DeviceContext *"); + .TypedAs("ID3D11DeviceContext *"_lit); } RDCDEBUG("Inserting Resource Serialisers"); diff --git a/renderdoc/driver/d3d11/d3d11_device1_wrap.cpp b/renderdoc/driver/d3d11/d3d11_device1_wrap.cpp index 061ecf500..6d8d69a79 100644 --- a/renderdoc/driver/d3d11/d3d11_device1_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_device1_wrap.cpp @@ -73,7 +73,8 @@ bool WrappedID3D11Device::Serialise_CreateBlendState1(SerialiserType &ser, ID3D11BlendState1 **ppBlendState) { SERIALISE_ELEMENT_LOCAL(Descriptor, *pBlendStateDesc); - SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppBlendState)).TypedAs("ID3D11BlendState1 *"); + SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppBlendState)) + .TypedAs("ID3D11BlendState1 *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -182,7 +183,7 @@ bool WrappedID3D11Device::Serialise_CreateRasterizerState1( { SERIALISE_ELEMENT_LOCAL(Descriptor, *pRasterizerDesc); SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppRasterizerState)) - .TypedAs("ID3D11RasterizerState1 *"); + .TypedAs("ID3D11RasterizerState1 *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d11/d3d11_device3_wrap.cpp b/renderdoc/driver/d3d11/d3d11_device3_wrap.cpp index 0ee07111a..a829087e2 100644 --- a/renderdoc/driver/d3d11/d3d11_device3_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_device3_wrap.cpp @@ -47,7 +47,8 @@ bool WrappedID3D11Device::Serialise_CreateTexture2D1(SerialiserType &ser, SERIALISE_ELEMENT_ARRAY(pInitialData, pInitialData ? numSubresources : 0); } - SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture2D)).TypedAs("ID3D11Texture2D *"); + SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture2D)) + .TypedAs("ID3D11Texture2D *"_lit); std::vector descs = Serialise_CreateTextureData(ser, ppTexture2D ? *ppTexture2D : NULL, pTexture, pInitialData, @@ -186,7 +187,8 @@ bool WrappedID3D11Device::Serialise_CreateTexture3D1(SerialiserType &ser, SERIALISE_ELEMENT_ARRAY(pInitialData, pInitialData ? numSubresources : 0); } - SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture3D)).TypedAs("ID3D11Texture3D *"); + SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture3D)) + .TypedAs("ID3D11Texture3D *"_lit); std::vector descs = Serialise_CreateTextureData(ser, ppTexture3D ? *ppTexture3D : NULL, pTexture, pInitialData, @@ -316,7 +318,7 @@ bool WrappedID3D11Device::Serialise_CreateShaderResourceView1( SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppSRView)) - .TypedAs("ID3D11ShaderResourceView1 *"); + .TypedAs("ID3D11ShaderResourceView1 *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -466,7 +468,8 @@ bool WrappedID3D11Device::Serialise_CreateRenderTargetView1(SerialiserType &ser, { SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); - SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppRTView)).TypedAs("ID3D11RenderTargetView1 *"); + SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppRTView)) + .TypedAs("ID3D11RenderTargetView1 *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -613,7 +616,7 @@ bool WrappedID3D11Device::Serialise_CreateUnorderedAccessView1( SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppUAView)) - .TypedAs("ID3D11UnorderedAccessView1 *"); + .TypedAs("ID3D11UnorderedAccessView1 *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -727,7 +730,7 @@ bool WrappedID3D11Device::Serialise_CreateRasterizerState2( { SERIALISE_ELEMENT_LOCAL(Descriptor, *pRasterizerDesc); SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppRasterizerState)) - .TypedAs("ID3D11RasterizerState2 *"); + .TypedAs("ID3D11RasterizerState2 *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -837,7 +840,7 @@ bool WrappedID3D11Device::Serialise_CreateQuery1(SerialiserType &ser, ID3D11Query1 **ppQuery) { SERIALISE_ELEMENT_LOCAL(Descriptor, *pQueryDesc); - SERIALISE_ELEMENT_LOCAL(pQuery, GetIDForResource(*ppQuery)).TypedAs("ID3D11Query1 *"); + SERIALISE_ELEMENT_LOCAL(pQuery, GetIDForResource(*ppQuery)).TypedAs("ID3D11Query1 *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d11/d3d11_device_wrap.cpp b/renderdoc/driver/d3d11/d3d11_device_wrap.cpp index 936f32b67..2a3832249 100644 --- a/renderdoc/driver/d3d11/d3d11_device_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_device_wrap.cpp @@ -33,10 +33,10 @@ bool WrappedID3D11Device::Serialise_CreateBuffer(SerialiserType &ser, const D3D1 const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); // unused, just for the sake of the user SERIALISE_ELEMENT_OPT(pInitialData); - SERIALISE_ELEMENT_LOCAL(pBuffer, GetIDForResource(*ppBuffer)).TypedAs("ID3D11Buffer *"); + SERIALISE_ELEMENT_LOCAL(pBuffer, GetIDForResource(*ppBuffer)).TypedAs("ID3D11Buffer *"_lit); D3D11_SUBRESOURCE_DATA fakeData; RDCEraseEl(fakeData); @@ -381,7 +381,8 @@ bool WrappedID3D11Device::Serialise_CreateTexture1D(SerialiserType &ser, SERIALISE_ELEMENT_ARRAY(pInitialData, pInitialData ? numSubresources : 0); } - SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture1D)).TypedAs("ID3D11Texture1D *"); + SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture1D)) + .TypedAs("ID3D11Texture1D *"_lit); std::vector descs = Serialise_CreateTextureData( ser, ppTexture1D ? *ppTexture1D : NULL, pTexture, pInitialData, Descriptor.Width, 1, 1, @@ -514,7 +515,8 @@ bool WrappedID3D11Device::Serialise_CreateTexture2D(SerialiserType &ser, SERIALISE_ELEMENT_ARRAY(pInitialData, pInitialData ? numSubresources : 0); } - SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture2D)).TypedAs("ID3D11Texture2D *"); + SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture2D)) + .TypedAs("ID3D11Texture2D *"_lit); std::vector descs = Serialise_CreateTextureData(ser, ppTexture2D ? *ppTexture2D : NULL, pTexture, pInitialData, @@ -647,7 +649,8 @@ bool WrappedID3D11Device::Serialise_CreateTexture3D(SerialiserType &ser, SERIALISE_ELEMENT_ARRAY(pInitialData, pInitialData ? numSubresources : 0); } - SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture3D)).TypedAs("ID3D11Texture3D *"); + SERIALISE_ELEMENT_LOCAL(pTexture, GetIDForResource(*ppTexture3D)) + .TypedAs("ID3D11Texture3D *"_lit); std::vector descs = Serialise_CreateTextureData(ser, ppTexture3D ? *ppTexture3D : NULL, pTexture, pInitialData, @@ -770,7 +773,8 @@ bool WrappedID3D11Device::Serialise_CreateShaderResourceView( { SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); - SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppSRView)).TypedAs("ID3D11ShaderResourceView *"); + SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppSRView)) + .TypedAs("ID3D11ShaderResourceView *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -911,7 +915,7 @@ bool WrappedID3D11Device::Serialise_CreateUnorderedAccessView( SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppUAView)) - .TypedAs("ID3D11UnorderedAccessView *"); + .TypedAs("ID3D11UnorderedAccessView *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1051,7 +1055,8 @@ bool WrappedID3D11Device::Serialise_CreateRenderTargetView(SerialiserType &ser, { SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); - SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppRTView)).TypedAs("ID3D11RenderTargetView *"); + SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppRTView)) + .TypedAs("ID3D11RenderTargetView *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1185,7 +1190,7 @@ bool WrappedID3D11Device::Serialise_CreateDepthStencilView( SERIALISE_ELEMENT(pResource); SERIALISE_ELEMENT_OPT(pDesc); SERIALISE_ELEMENT_LOCAL(pView, GetIDForResource(*ppDepthStencilView)) - .TypedAs("ID3D11DepthStencilView *"); + .TypedAs("ID3D11DepthStencilView *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1292,7 +1297,7 @@ bool WrappedID3D11Device::Serialise_CreateInputLayout( SERIALISE_ELEMENT_ARRAY(pShaderBytecodeWithInputSignature, BytecodeLength_); SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT_LOCAL(pInputLayout, GetIDForResource(*ppInputLayout)) - .TypedAs("ID3D11InputLayout *"); + .TypedAs("ID3D11InputLayout *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1394,7 +1399,7 @@ bool WrappedID3D11Device::Serialise_CreateVertexShader(SerialiserType &ser, SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppVertexShader)) - .TypedAs("ID3D11VertexShader *"); + .TypedAs("ID3D11VertexShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1490,7 +1495,7 @@ bool WrappedID3D11Device::Serialise_CreateGeometryShader(SerialiserType &ser, SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppGeometryShader)) - .TypedAs("ID3D11GeometryShader *"); + .TypedAs("ID3D11GeometryShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1592,7 +1597,7 @@ bool WrappedID3D11Device::Serialise_CreateGeometryShaderWithStreamOutput( SERIALISE_ELEMENT(RasterizedStream); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppGeometryShader)) - .TypedAs("ID3D11GeometryShader *"); + .TypedAs("ID3D11GeometryShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1693,7 +1698,8 @@ bool WrappedID3D11Device::Serialise_CreatePixelShader(SerialiserType &ser, SERIALISE_ELEMENT_ARRAY(pShaderBytecode, BytecodeLength_); SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT(pClassLinkage); - SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppPixelShader)).TypedAs("ID3D11PixelShader *"); + SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppPixelShader)) + .TypedAs("ID3D11PixelShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1785,7 +1791,8 @@ bool WrappedID3D11Device::Serialise_CreateHullShader(SerialiserType &ser, const SERIALISE_ELEMENT_ARRAY(pShaderBytecode, BytecodeLength_); SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT(pClassLinkage); - SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppHullShader)).TypedAs("ID3D11HullShader *"); + SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppHullShader)) + .TypedAs("ID3D11HullShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1879,7 +1886,7 @@ bool WrappedID3D11Device::Serialise_CreateDomainShader(SerialiserType &ser, SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppDomainShader)) - .TypedAs("ID3D11DomainShader *"); + .TypedAs("ID3D11DomainShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1975,7 +1982,7 @@ bool WrappedID3D11Device::Serialise_CreateComputeShader(SerialiserType &ser, SERIALISE_ELEMENT_LOCAL(BytecodeLength, uint64_t(BytecodeLength_)); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pShader, GetIDForResource(*ppComputeShader)) - .TypedAs("ID3D11ComputeShader *"); + .TypedAs("ID3D11ComputeShader *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2077,7 +2084,7 @@ bool WrappedID3D11Device::Serialise_CreateClassInstance(SerialiserType &ser, LPC SERIALISE_ELEMENT(SamplerOffset); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pInstance, GetIDForResource(*ppInstance)) - .TypedAs("ID3D11ClassInstance *"); + .TypedAs("ID3D11ClassInstance *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2149,7 +2156,7 @@ bool WrappedID3D11Device::Serialise_GetClassInstance(SerialiserType &ser, LPCSTR SERIALISE_ELEMENT(InstanceIndex); SERIALISE_ELEMENT(pClassLinkage); SERIALISE_ELEMENT_LOCAL(pInstance, GetIDForResource(*ppInstance)) - .TypedAs("ID3D11ClassInstance *"); + .TypedAs("ID3D11ClassInstance *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2214,7 +2221,8 @@ template bool WrappedID3D11Device::Serialise_CreateClassLinkage(SerialiserType &ser, ID3D11ClassLinkage **ppLinkage) { - SERIALISE_ELEMENT_LOCAL(pLinkage, GetIDForResource(*ppLinkage)).TypedAs("ID3D11ClassLinkage *"); + SERIALISE_ELEMENT_LOCAL(pLinkage, GetIDForResource(*ppLinkage)) + .TypedAs("ID3D11ClassLinkage *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2278,7 +2286,8 @@ bool WrappedID3D11Device::Serialise_CreateBlendState(SerialiserType &ser, ID3D11BlendState **ppBlendState) { SERIALISE_ELEMENT_LOCAL(Descriptor, *pBlendStateDesc); - SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppBlendState)).TypedAs("ID3D11BlendState *"); + SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppBlendState)) + .TypedAs("ID3D11BlendState *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2382,7 +2391,7 @@ bool WrappedID3D11Device::Serialise_CreateDepthStencilState( { SERIALISE_ELEMENT_LOCAL(Descriptor, *pDepthStencilDesc); SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppDepthStencilState)) - .TypedAs("ID3D11DepthStencilState *"); + .TypedAs("ID3D11DepthStencilState *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2486,7 +2495,7 @@ bool WrappedID3D11Device::Serialise_CreateRasterizerState(SerialiserType &ser, { SERIALISE_ELEMENT_LOCAL(Descriptor, *pRasterizerDesc); SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppRasterizerState)) - .TypedAs("ID3D11RasterizerState *"); + .TypedAs("ID3D11RasterizerState *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2590,7 +2599,7 @@ bool WrappedID3D11Device::Serialise_CreateSamplerState(SerialiserType &ser, { SERIALISE_ELEMENT_LOCAL(Descriptor, *pSamplerDesc); SERIALISE_ELEMENT_LOCAL(pState, GetIDForResource(*ppSamplerState)) - .TypedAs("ID3D11SamplerState *"); + .TypedAs("ID3D11SamplerState *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2693,7 +2702,7 @@ bool WrappedID3D11Device::Serialise_CreateQuery(SerialiserType &ser, ID3D11Query **ppQuery) { SERIALISE_ELEMENT_LOCAL(Descriptor, *pQueryDesc); - SERIALISE_ELEMENT_LOCAL(pQuery, GetIDForResource(*ppQuery)).TypedAs("ID3D11Query *"); + SERIALISE_ELEMENT_LOCAL(pQuery, GetIDForResource(*ppQuery)).TypedAs("ID3D11Query *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2767,7 +2776,8 @@ bool WrappedID3D11Device::Serialise_CreatePredicate(SerialiserType &ser, ID3D11Predicate **ppPredicate) { SERIALISE_ELEMENT_LOCAL(Descriptor, *pPredicateDesc); - SERIALISE_ELEMENT_LOCAL(pPredicate, GetIDForResource(*ppPredicate)).TypedAs("ID3D11Predicate *"); + SERIALISE_ELEMENT_LOCAL(pPredicate, GetIDForResource(*ppPredicate)) + .TypedAs("ID3D11Predicate *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2852,7 +2862,7 @@ bool WrappedID3D11Device::Serialise_CreateCounter(SerialiserType &ser, ID3D11Counter **ppCounter) { SERIALISE_ELEMENT_LOCAL(Descriptor, *pCounterDesc); - SERIALISE_ELEMENT_LOCAL(pCounter, GetIDForResource(*ppCounter)).TypedAs("ID3D11Counter *"); + SERIALISE_ELEMENT_LOCAL(pCounter, GetIDForResource(*ppCounter)).TypedAs("ID3D11Counter *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2934,7 +2944,7 @@ bool WrappedID3D11Device::Serialise_CreateDeferredContext(SerialiserType &ser, { SERIALISE_ELEMENT(ContextFlags); SERIALISE_ELEMENT_LOCAL(pDeferredContext, GetIDForDeviceChild(*ppDeferredContext)) - .TypedAs("ID3D11DeviceContext *"); + .TypedAs("ID3D11DeviceContext *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -3013,7 +3023,7 @@ bool WrappedID3D11Device::Serialise_OpenSharedResource(SerialiserType &ser, HAND ID3D11DeviceChild *res = ser.IsWriting() ? (ID3D11DeviceChild *)*ppResource : NULL; SERIALISE_ELEMENT_LOCAL(Type, IdentifyTypeByPtr(res)); - SERIALISE_ELEMENT_LOCAL(pResource, GetIDForResource(res)).TypedAs("ID3D11DeviceChild *"); + SERIALISE_ELEMENT_LOCAL(pResource, GetIDForResource(res)).TypedAs("ID3D11DeviceChild *"_lit); if(Type == Resource_Buffer) { diff --git a/renderdoc/driver/d3d11/d3d11_initstate.cpp b/renderdoc/driver/d3d11/d3d11_initstate.cpp index 67ec95047..4c4adb178 100644 --- a/renderdoc/driver/d3d11/d3d11_initstate.cpp +++ b/renderdoc/driver/d3d11/d3d11_initstate.cpp @@ -388,7 +388,7 @@ bool WrappedID3D11Device::Serialise_InitialState(SerialiserType &ser, ResourceId if(type != Resource_Buffer) { SERIALISE_ELEMENT(type); - SERIALISE_ELEMENT(id).TypedAs("ID3D11DeviceChild *"); + SERIALISE_ELEMENT(id).TypedAs("ID3D11DeviceChild *"_lit); } if(IsReplayingAndReading()) diff --git a/renderdoc/driver/d3d11/d3d11_stringise.cpp b/renderdoc/driver/d3d11/d3d11_stringise.cpp index 1a453788b..15fbc8dce 100644 --- a/renderdoc/driver/d3d11/d3d11_stringise.cpp +++ b/renderdoc/driver/d3d11/d3d11_stringise.cpp @@ -27,7 +27,7 @@ #include "d3d11_resources.h" template <> -std::string DoStringise(const D3D11ResourceType &el) +rdcstr DoStringise(const D3D11ResourceType &el) { BEGIN_ENUM_STRINGISE(D3D11ResourceType); { @@ -57,7 +57,7 @@ std::string DoStringise(const D3D11ResourceType &el) } template <> -std::string DoStringise(const D3D11Chunk &el) +rdcstr DoStringise(const D3D11Chunk &el) { RDCCOMPILE_ASSERT((uint32_t)D3D11Chunk::Max == 1127, "Chunks changed without updating names"); @@ -215,7 +215,7 @@ std::string DoStringise(const D3D11Chunk &el) } template <> -std::string DoStringise(const D3D11_BIND_FLAG &el) +rdcstr DoStringise(const D3D11_BIND_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_BIND_FLAG); { @@ -236,7 +236,7 @@ std::string DoStringise(const D3D11_BIND_FLAG &el) } template <> -std::string DoStringise(const D3D11_CPU_ACCESS_FLAG &el) +rdcstr DoStringise(const D3D11_CPU_ACCESS_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_CPU_ACCESS_FLAG); { @@ -249,7 +249,7 @@ std::string DoStringise(const D3D11_CPU_ACCESS_FLAG &el) } template <> -std::string DoStringise(const D3D11_RESOURCE_MISC_FLAG &el) +rdcstr DoStringise(const D3D11_RESOURCE_MISC_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_RESOURCE_MISC_FLAG); { @@ -277,7 +277,7 @@ std::string DoStringise(const D3D11_RESOURCE_MISC_FLAG &el) } template <> -std::string DoStringise(const D3D11_COLOR_WRITE_ENABLE &el) +rdcstr DoStringise(const D3D11_COLOR_WRITE_ENABLE &el) { BEGIN_BITFIELD_STRINGISE(D3D11_COLOR_WRITE_ENABLE); { @@ -293,7 +293,7 @@ std::string DoStringise(const D3D11_COLOR_WRITE_ENABLE &el) } template <> -std::string DoStringise(const D3D11_BUFFER_UAV_FLAG &el) +rdcstr DoStringise(const D3D11_BUFFER_UAV_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_BUFFER_UAV_FLAG); { @@ -307,7 +307,7 @@ std::string DoStringise(const D3D11_BUFFER_UAV_FLAG &el) } template <> -std::string DoStringise(const D3D11_DSV_FLAG &el) +rdcstr DoStringise(const D3D11_DSV_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_DSV_FLAG); { @@ -320,7 +320,7 @@ std::string DoStringise(const D3D11_DSV_FLAG &el) } template <> -std::string DoStringise(const D3D11_COPY_FLAGS &el) +rdcstr DoStringise(const D3D11_COPY_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D11_COPY_FLAGS); { @@ -333,7 +333,7 @@ std::string DoStringise(const D3D11_COPY_FLAGS &el) } template <> -std::string DoStringise(const D3D11_MAP_FLAG &el) +rdcstr DoStringise(const D3D11_MAP_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_MAP_FLAG); { @@ -345,7 +345,7 @@ std::string DoStringise(const D3D11_MAP_FLAG &el) } template <> -std::string DoStringise(const D3D11_CLEAR_FLAG &el) +rdcstr DoStringise(const D3D11_CLEAR_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_CLEAR_FLAG); { @@ -358,7 +358,7 @@ std::string DoStringise(const D3D11_CLEAR_FLAG &el) } template <> -std::string DoStringise(const D3D11_BUFFEREX_SRV_FLAG &el) +rdcstr DoStringise(const D3D11_BUFFEREX_SRV_FLAG &el) { BEGIN_BITFIELD_STRINGISE(D3D11_BUFFEREX_SRV_FLAG); { @@ -370,7 +370,7 @@ std::string DoStringise(const D3D11_BUFFEREX_SRV_FLAG &el) } template <> -std::string DoStringise(const D3D11_TEXTURE_LAYOUT &el) +rdcstr DoStringise(const D3D11_TEXTURE_LAYOUT &el) { BEGIN_ENUM_STRINGISE(D3D11_TEXTURE_LAYOUT); { @@ -382,7 +382,7 @@ std::string DoStringise(const D3D11_TEXTURE_LAYOUT &el) } template <> -std::string DoStringise(const D3D11_DEPTH_WRITE_MASK &el) +rdcstr DoStringise(const D3D11_DEPTH_WRITE_MASK &el) { BEGIN_ENUM_STRINGISE(D3D11_DEPTH_WRITE_MASK); { @@ -393,7 +393,7 @@ std::string DoStringise(const D3D11_DEPTH_WRITE_MASK &el) } template <> -std::string DoStringise(const D3D11_COMPARISON_FUNC &el) +rdcstr DoStringise(const D3D11_COMPARISON_FUNC &el) { BEGIN_ENUM_STRINGISE(D3D11_COMPARISON_FUNC); { @@ -410,7 +410,7 @@ std::string DoStringise(const D3D11_COMPARISON_FUNC &el) } template <> -std::string DoStringise(const D3D11_STENCIL_OP &el) +rdcstr DoStringise(const D3D11_STENCIL_OP &el) { BEGIN_ENUM_STRINGISE(D3D11_STENCIL_OP); { @@ -427,7 +427,7 @@ std::string DoStringise(const D3D11_STENCIL_OP &el) } template <> -std::string DoStringise(const D3D11_BLEND &el) +rdcstr DoStringise(const D3D11_BLEND &el) { BEGIN_ENUM_STRINGISE(D3D11_BLEND); { @@ -453,7 +453,7 @@ std::string DoStringise(const D3D11_BLEND &el) } template <> -std::string DoStringise(const D3D11_BLEND_OP &el) +rdcstr DoStringise(const D3D11_BLEND_OP &el) { BEGIN_ENUM_STRINGISE(D3D11_BLEND_OP); { @@ -467,7 +467,7 @@ std::string DoStringise(const D3D11_BLEND_OP &el) } template <> -std::string DoStringise(const D3D11_CULL_MODE &el) +rdcstr DoStringise(const D3D11_CULL_MODE &el) { BEGIN_ENUM_STRINGISE(D3D11_CULL_MODE); { @@ -479,7 +479,7 @@ std::string DoStringise(const D3D11_CULL_MODE &el) } template <> -std::string DoStringise(const D3D11_FILL_MODE &el) +rdcstr DoStringise(const D3D11_FILL_MODE &el) { BEGIN_ENUM_STRINGISE(D3D11_FILL_MODE); { @@ -490,7 +490,7 @@ std::string DoStringise(const D3D11_FILL_MODE &el) } template <> -std::string DoStringise(const D3D11_CONSERVATIVE_RASTERIZATION_MODE &el) +rdcstr DoStringise(const D3D11_CONSERVATIVE_RASTERIZATION_MODE &el) { BEGIN_ENUM_STRINGISE(D3D11_CONSERVATIVE_RASTERIZATION_MODE); { @@ -501,7 +501,7 @@ std::string DoStringise(const D3D11_CONSERVATIVE_RASTERIZATION_MODE &el) } template <> -std::string DoStringise(const D3D11_TEXTURE_ADDRESS_MODE &el) +rdcstr DoStringise(const D3D11_TEXTURE_ADDRESS_MODE &el) { BEGIN_ENUM_STRINGISE(D3D11_TEXTURE_ADDRESS_MODE); { @@ -515,7 +515,7 @@ std::string DoStringise(const D3D11_TEXTURE_ADDRESS_MODE &el) } template <> -std::string DoStringise(const D3D11_FILTER &el) +rdcstr DoStringise(const D3D11_FILTER &el) { BEGIN_ENUM_STRINGISE(D3D11_FILTER); { @@ -542,7 +542,7 @@ std::string DoStringise(const D3D11_FILTER &el) } template <> -std::string DoStringise(const D3D11_SRV_DIMENSION &el) +rdcstr DoStringise(const D3D11_SRV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D11_SRV_DIMENSION); { @@ -562,7 +562,7 @@ std::string DoStringise(const D3D11_SRV_DIMENSION &el) } template <> -std::string DoStringise(const D3D11_RTV_DIMENSION &el) +rdcstr DoStringise(const D3D11_RTV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D11_RTV_DIMENSION); { @@ -579,7 +579,7 @@ std::string DoStringise(const D3D11_RTV_DIMENSION &el) } template <> -std::string DoStringise(const D3D11_UAV_DIMENSION &el) +rdcstr DoStringise(const D3D11_UAV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D11_UAV_DIMENSION); { @@ -594,7 +594,7 @@ std::string DoStringise(const D3D11_UAV_DIMENSION &el) } template <> -std::string DoStringise(const D3D11_DSV_DIMENSION &el) +rdcstr DoStringise(const D3D11_DSV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D11_DSV_DIMENSION); { @@ -609,7 +609,7 @@ std::string DoStringise(const D3D11_DSV_DIMENSION &el) } template <> -std::string DoStringise(const D3D11_CONTEXT_TYPE &el) +rdcstr DoStringise(const D3D11_CONTEXT_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D11_CONTEXT_TYPE); { @@ -623,7 +623,7 @@ std::string DoStringise(const D3D11_CONTEXT_TYPE &el) } template <> -std::string DoStringise(const D3D11_QUERY &el) +rdcstr DoStringise(const D3D11_QUERY &el) { BEGIN_ENUM_STRINGISE(D3D11_QUERY); { @@ -648,7 +648,7 @@ std::string DoStringise(const D3D11_QUERY &el) } template <> -std::string DoStringise(const D3D11_COUNTER &el) +rdcstr DoStringise(const D3D11_COUNTER &el) { BEGIN_ENUM_STRINGISE(D3D11_COUNTER); { @@ -658,7 +658,7 @@ std::string DoStringise(const D3D11_COUNTER &el) } template <> -std::string DoStringise(const D3D11_MAP &el) +rdcstr DoStringise(const D3D11_MAP &el) { BEGIN_ENUM_STRINGISE(D3D11_MAP); { @@ -672,7 +672,7 @@ std::string DoStringise(const D3D11_MAP &el) } template <> -std::string DoStringise(const D3D11_PRIMITIVE_TOPOLOGY &el) +rdcstr DoStringise(const D3D11_PRIMITIVE_TOPOLOGY &el) { BEGIN_ENUM_STRINGISE(D3D11_PRIMITIVE_TOPOLOGY); { @@ -723,7 +723,7 @@ std::string DoStringise(const D3D11_PRIMITIVE_TOPOLOGY &el) } template <> -std::string DoStringise(const D3D11_USAGE &el) +rdcstr DoStringise(const D3D11_USAGE &el) { BEGIN_ENUM_STRINGISE(D3D11_USAGE); { @@ -736,7 +736,7 @@ std::string DoStringise(const D3D11_USAGE &el) } template <> -std::string DoStringise(const D3D11_INPUT_CLASSIFICATION &el) +rdcstr DoStringise(const D3D11_INPUT_CLASSIFICATION &el) { BEGIN_ENUM_STRINGISE(D3D11_INPUT_CLASSIFICATION); { @@ -747,7 +747,7 @@ std::string DoStringise(const D3D11_INPUT_CLASSIFICATION &el) } template <> -std::string DoStringise(const D3D11_LOGIC_OP &el) +rdcstr DoStringise(const D3D11_LOGIC_OP &el) { BEGIN_ENUM_STRINGISE(D3D11_LOGIC_OP); { diff --git a/renderdoc/driver/d3d12/d3d12_command_list4_wrap.cpp b/renderdoc/driver/d3d12/d3d12_command_list4_wrap.cpp index e5daca17e..44b3b6339 100644 --- a/renderdoc/driver/d3d12/d3d12_command_list4_wrap.cpp +++ b/renderdoc/driver/d3d12/d3d12_command_list4_wrap.cpp @@ -52,7 +52,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_BeginRenderPass( // read and serialise the D3D12Descriptor contents directly, as the call has semantics of // consuming the descriptor immediately - SERIALISE_ELEMENT(RTVs).Named("RenderTargetDescriptors"); + SERIALISE_ELEMENT(RTVs).Named("RenderTargetDescriptors"_lit); } { @@ -63,7 +63,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_BeginRenderPass( if(ser.IsWriting()) pDSV = pDepthStencil ? GetWrapped(pDepthStencil->cpuDescriptor) : NULL; - SERIALISE_ELEMENT_OPT(pDSV).Named("DepthStencilDescriptor"); + SERIALISE_ELEMENT_OPT(pDSV).Named("DepthStencilDescriptor"_lit); if(pDSV) DSV = *pDSV; diff --git a/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp b/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp index 92650f6c7..b716903d2 100644 --- a/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp +++ b/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp @@ -71,8 +71,8 @@ bool WrappedID3D12GraphicsCommandList::Serialise_Close(SerialiserType &ser) BakedCommandList = record->bakedCommands->GetResourceID(); } - SERIALISE_ELEMENT_LOCAL(CommandList, GetResourceID()).TypedAs("ID3D12GraphicsCommandList *"); - SERIALISE_ELEMENT(BakedCommandList).TypedAs("ID3D12GraphicsCommandList *"); + SERIALISE_ELEMENT_LOCAL(CommandList, GetResourceID()).TypedAs("ID3D12GraphicsCommandList *"_lit); + SERIALISE_ELEMENT(BakedCommandList).TypedAs("ID3D12GraphicsCommandList *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -194,8 +194,8 @@ bool WrappedID3D12GraphicsCommandList::Serialise_Reset(SerialiserType &ser, BakedCommandList = record->bakedCommands->GetResourceID(); } - SERIALISE_ELEMENT(BakedCommandList).TypedAs("ID3D12GraphicsCommandList *"); - SERIALISE_ELEMENT_LOCAL(CommandList, GetResourceID()).TypedAs("ID3D12GraphicsCommandList *"); + SERIALISE_ELEMENT(BakedCommandList).TypedAs("ID3D12GraphicsCommandList *"_lit); + SERIALISE_ELEMENT_LOCAL(CommandList, GetResourceID()).TypedAs("ID3D12GraphicsCommandList *"_lit); SERIALISE_ELEMENT(pAllocator); SERIALISE_ELEMENT(pInitialState); @@ -1294,7 +1294,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_OMSetRenderTargets( // read and serialise the D3D12Descriptor contents directly, as the call has semantics of // consuming the descriptor immediately - SERIALISE_ELEMENT(RTVs).Named("pRenderTargetDescriptors"); + SERIALISE_ELEMENT(RTVs).Named("pRenderTargetDescriptors"_lit); } else { @@ -1341,7 +1341,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_OMSetRenderTargets( if(ser.IsWriting()) pDSV = pDepthStencilDescriptor ? GetWrapped(*pDepthStencilDescriptor) : NULL; - SERIALISE_ELEMENT_OPT(pDSV).Named("pDepthStencilDescriptor"); + SERIALISE_ELEMENT_OPT(pDSV).Named("pDepthStencilDescriptor"_lit); if(pDSV) DSV = *pDSV; @@ -3473,9 +3473,9 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in StructuredSerialiser structuriser(fakeChunk, &GetChunkName); structuriser.SetUserData(GetResourceManager()); - structuriser.Serialise("CommandIndex", i); - structuriser.Serialise("ArgumentIndex", a); - structuriser.Serialise("ArgumentSignature", arg); + structuriser.Serialise("CommandIndex"_lit, i); + structuriser.Serialise("ArgumentIndex"_lit, a); + structuriser.Serialise("ArgumentSignature"_lit, arg); switch(arg.Type) { @@ -3495,7 +3495,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in fakeChunk->name = curDraw.name; - structuriser.Serialise("ArgumentData", *args); + structuriser.Serialise("ArgumentData"_lit, *args); // if this is the first draw of the indirect, we could have picked up previous // non-indirect events in this drawcall, so the EID will be higher than we expect. Just @@ -3528,7 +3528,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in fakeChunk->name = curDraw.name; - structuriser.Serialise("ArgumentData", *args); + structuriser.Serialise("ArgumentData"_lit, *args); // if this is the first draw of the indirect, we could have picked up previous // non-indirect events in this drawcall, so the EID will be higher than we expect. Just @@ -3558,7 +3558,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in fakeChunk->name = curDraw.name; - structuriser.Serialise("ArgumentData", *args); + structuriser.Serialise("ArgumentData"_lit, *args); // if this is the first draw of the indirect, we could have picked up previous // non-indirect events in this drawcall, so the EID will be higher than we expect. Just @@ -3581,7 +3581,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in fakeChunk->name = StringFormat::Fmt("[%u] arg%u: IndirectSetRoot32BitConstants()", i, a); - structuriser.Serialise("Values", data32, arg.Constant.Num32BitValuesToSet); + structuriser.Serialise("Values"_lit, data32, arg.Constant.Num32BitValuesToSet); if(arg.Constant.RootParameterIndex < state.graphics.sigelems.size()) state.graphics.sigelems[arg.Constant.RootParameterIndex].constants.assign( @@ -3620,7 +3620,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in fakeChunk->name = StringFormat::Fmt("[%u] arg%u: IndirectIASetVertexBuffer()", i, a); - structuriser.Serialise("ArgumentData", *vb); + structuriser.Serialise("ArgumentData"_lit, *vb); // advance only the EID, since we're still in the same draw eid++; @@ -3648,7 +3648,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in fakeChunk->name = StringFormat::Fmt("[%u] arg%u: IndirectIASetIndexBuffer()", i, a); - structuriser.Serialise("ArgumentData", *ib); + structuriser.Serialise("ArgumentData"_lit, *ib); // advance only the EID, since we're still in the same draw eid++; @@ -3698,7 +3698,7 @@ void WrappedID3D12GraphicsCommandList::PatchExecuteIndirect(BakedCmdListInfo &in D3D12BufferLocation buf = *addr; - structuriser.Serialise("ArgumentData", buf); + structuriser.Serialise("ArgumentData"_lit, buf); // advance only the EID, since we're still in the same draw eid++; @@ -4302,7 +4302,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_ClearDepthStencilView( { // read and serialise the D3D12Descriptor contents directly, as the call has semantics of // consuming the descriptor immediately - SERIALISE_ELEMENT_LOCAL(DSV, *GetWrapped(DepthStencilView)).Named("DepthStencilView"); + SERIALISE_ELEMENT_LOCAL(DSV, *GetWrapped(DepthStencilView)).Named("DepthStencilView"_lit); if(IsReplayingAndReading()) DepthStencilView = m_pDevice->GetReplay()->GetDebugManager()->GetTempDescriptor(DSV); @@ -4399,7 +4399,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_ClearRenderTargetView( { // read and serialise the D3D12Descriptor contents directly, as the call has semantics of // consuming the descriptor immediately - SERIALISE_ELEMENT_LOCAL(RTV, *GetWrapped(RenderTargetView)).Named("RenderTargetView"); + SERIALISE_ELEMENT_LOCAL(RTV, *GetWrapped(RenderTargetView)).Named("RenderTargetView"_lit); if(IsReplayingAndReading()) RenderTargetView = m_pDevice->GetReplay()->GetDebugManager()->GetTempDescriptor(RTV); @@ -4492,7 +4492,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_ClearUnorderedAccessViewUint( { // read and serialise the D3D12Descriptor contents directly, as the call has semantics of // consuming the descriptor immediately. This is only true for the CPU-side handle - SERIALISE_ELEMENT_LOCAL(UAV, *GetWrapped(ViewCPUHandle)).Named("ViewCPUHandle"); + SERIALISE_ELEMENT_LOCAL(UAV, *GetWrapped(ViewCPUHandle)).Named("ViewCPUHandle"_lit); if(IsReplayingAndReading()) ViewCPUHandle = m_pDevice->GetReplay()->GetDebugManager()->GetTempDescriptor(UAV); @@ -4597,7 +4597,7 @@ bool WrappedID3D12GraphicsCommandList::Serialise_ClearUnorderedAccessViewFloat( { // read and serialise the D3D12Descriptor contents directly, as the call has semantics of // consuming the descriptor immediately. This is only true for the CPU-side handle - SERIALISE_ELEMENT_LOCAL(UAV, *GetWrapped(ViewCPUHandle)).Named("ViewCPUHandle"); + SERIALISE_ELEMENT_LOCAL(UAV, *GetWrapped(ViewCPUHandle)).Named("ViewCPUHandle"_lit); if(IsReplayingAndReading()) ViewCPUHandle = m_pDevice->GetReplay()->GetDebugManager()->GetTempDescriptor(UAV); diff --git a/renderdoc/driver/d3d12/d3d12_commands.cpp b/renderdoc/driver/d3d12/d3d12_commands.cpp index f1bc7677b..f6682841a 100644 --- a/renderdoc/driver/d3d12/d3d12_commands.cpp +++ b/renderdoc/driver/d3d12/d3d12_commands.cpp @@ -634,7 +634,7 @@ bool WrappedID3D12CommandQueue::ProcessChunk(ReadSerialiser &ser, D3D12Chunk chu if(system == SystemChunk::CaptureEnd) { - SERIALISE_ELEMENT_LOCAL(PresentedImage, ResourceId()).TypedAs("ID3D12Resource *"); + SERIALISE_ELEMENT_LOCAL(PresentedImage, ResourceId()).TypedAs("ID3D12Resource *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d12/d3d12_device.cpp b/renderdoc/driver/d3d12/d3d12_device.cpp index 5633b9034..45f5444c8 100644 --- a/renderdoc/driver/d3d12/d3d12_device.cpp +++ b/renderdoc/driver/d3d12/d3d12_device.cpp @@ -871,7 +871,7 @@ bool WrappedID3D12Device::Serialise_WrapSwapchainBuffer(SerialiserType &ser, WrappedID3D12Resource1 *pRes = (WrappedID3D12Resource1 *)realSurface; SERIALISE_ELEMENT(Buffer); - SERIALISE_ELEMENT_LOCAL(SwapbufferID, GetResID(pRes)).TypedAs("ID3D12Resource *"); + SERIALISE_ELEMENT_LOCAL(SwapbufferID, GetResID(pRes)).TypedAs("ID3D12Resource *"_lit); SERIALISE_ELEMENT_LOCAL(BackbufferDescriptor, pRes->GetDesc()); SERIALISE_CHECK_READ_ERRORS(); @@ -1101,7 +1101,7 @@ bool WrappedID3D12Device::Serialise_MapDataWrite(SerialiserType &ser, ID3D12Reso flags = SerialiserFlags::NoFlags; } - ser.Serialise("MappedData", MappedData, range.End - range.Begin, flags); + ser.Serialise("MappedData"_lit, MappedData, range.End - range.Begin, flags); SERIALISE_ELEMENT(range); @@ -1476,7 +1476,8 @@ void WrappedID3D12Device::EndCaptureFrame(ID3D12Resource *presentImage) ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(SystemChunk::CaptureEnd); - SERIALISE_ELEMENT_LOCAL(PresentedBackbuffer, GetResID(presentImage)).TypedAs("ID3D12Resource *"); + SERIALISE_ELEMENT_LOCAL(PresentedBackbuffer, GetResID(presentImage)) + .TypedAs("ID3D12Resource *"_lit); m_FrameCaptureRecord->AddChunk(scope.Get()); } diff --git a/renderdoc/driver/d3d12/d3d12_device_wrap.cpp b/renderdoc/driver/d3d12/d3d12_device_wrap.cpp index c1f7b4211..b3c477029 100644 --- a/renderdoc/driver/d3d12/d3d12_device_wrap.cpp +++ b/renderdoc/driver/d3d12/d3d12_device_wrap.cpp @@ -36,11 +36,11 @@ bool WrappedID3D12Device::Serialise_CreateCommandQueue(SerialiserType &ser, const D3D12_COMMAND_QUEUE_DESC *pDesc, REFIID riid, void **ppCommandQueue) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pCommandQueue, ((WrappedID3D12CommandQueue *)*ppCommandQueue)->GetResourceID()) - .TypedAs("ID3D12CommandQueue *"); + .TypedAs("ID3D12CommandQueue *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -144,10 +144,10 @@ bool WrappedID3D12Device::Serialise_CreateCommandAllocator(SerialiserType &ser, REFIID riid, void **ppCommandAllocator) { SERIALISE_ELEMENT(type); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pCommandAllocator, ((WrappedID3D12CommandAllocator *)*ppCommandAllocator)->GetResourceID()) - .TypedAs("ID3D12CommandAllocator *"); + .TypedAs("ID3D12CommandAllocator *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -229,10 +229,10 @@ bool WrappedID3D12Device::Serialise_CreateCommandList(SerialiserType &ser, UINT SERIALISE_ELEMENT(type); SERIALISE_ELEMENT(pCommandAllocator); SERIALISE_ELEMENT(pInitialState); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pCommandList, ((WrappedID3D12GraphicsCommandList *)*ppCommandList)->GetResourceID()) - .TypedAs("ID3D12GraphicsCommandList *"); + .TypedAs("ID3D12GraphicsCommandList *"_lit); // this chunk is purely for user information and consistency, the command buffer we allocate is // a dummy and is not used for anything. @@ -365,11 +365,11 @@ bool WrappedID3D12Device::Serialise_CreateGraphicsPipelineState( SerialiserType &ser, const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, REFIID riid, void **ppPipelineState) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pPipelineState, ((WrappedID3D12PipelineState *)*ppPipelineState)->GetResourceID()) - .TypedAs("ID3D12PipelineState *"); + .TypedAs("ID3D12PipelineState *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -581,11 +581,11 @@ bool WrappedID3D12Device::Serialise_CreateComputePipelineState( SerialiserType &ser, const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, REFIID riid, void **ppPipelineState) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pPipelineState, ((WrappedID3D12PipelineState *)*ppPipelineState)->GetResourceID()) - .TypedAs("ID3D12PipelineState *"); + .TypedAs("ID3D12PipelineState *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -687,10 +687,10 @@ bool WrappedID3D12Device::Serialise_CreateDescriptorHeap( SerialiserType &ser, const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, REFIID riid, void **ppvHeap) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDescriptorHeapDesc).Named("pDescriptorHeapDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDescriptorHeapDesc).Named("pDescriptorHeapDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pHeap, ((WrappedID3D12DescriptorHeap *)*ppvHeap)->GetResourceID()) - .TypedAs("ID3D12DescriptorHeap *"); + .TypedAs("ID3D12DescriptorHeap *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -786,10 +786,10 @@ bool WrappedID3D12Device::Serialise_CreateRootSignature(SerialiserType &ser, UIN SERIALISE_ELEMENT(nodeMask); SERIALISE_ELEMENT_ARRAY(pBlobWithRootSignature, blobLengthInBytes_); SERIALISE_ELEMENT_LOCAL(blobLengthInBytes, uint64_t(blobLengthInBytes_)); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pRootSignature, ((WrappedID3D12RootSignature *)*ppvRootSignature)->GetResourceID()) - .TypedAs("ID3D12RootSignature *"); + .TypedAs("ID3D12RootSignature *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1182,14 +1182,14 @@ bool WrappedID3D12Device::Serialise_CreateCommittedResource( const D3D12_RESOURCE_DESC *pDesc, D3D12_RESOURCE_STATES InitialResourceState, const D3D12_CLEAR_VALUE *pOptimizedClearValue, REFIID riidResource, void **ppvResource) { - SERIALISE_ELEMENT_LOCAL(props, *pHeapProperties).Named("pHeapProperties"); + SERIALISE_ELEMENT_LOCAL(props, *pHeapProperties).Named("pHeapProperties"_lit); SERIALISE_ELEMENT(HeapFlags); - SERIALISE_ELEMENT_LOCAL(desc, *pDesc).Named("pDesc"); + SERIALISE_ELEMENT_LOCAL(desc, *pDesc).Named("pDesc"_lit); SERIALISE_ELEMENT(InitialResourceState); SERIALISE_ELEMENT_OPT(pOptimizedClearValue); - SERIALISE_ELEMENT_LOCAL(guid, riidResource).Named("riidResource"); + SERIALISE_ELEMENT_LOCAL(guid, riidResource).Named("riidResource"_lit); SERIALISE_ELEMENT_LOCAL(pResource, ((WrappedID3D12Resource1 *)*ppvResource)->GetResourceID()) - .TypedAs("ID3D12Resource *"); + .TypedAs("ID3D12Resource *"_lit); SERIALISE_ELEMENT_LOCAL(gpuAddress, ((WrappedID3D12Resource1 *)*ppvResource)->GetGPUVirtualAddressIfBuffer()) @@ -1364,10 +1364,10 @@ template bool WrappedID3D12Device::Serialise_CreateHeap(SerialiserType &ser, const D3D12_HEAP_DESC *pDesc, REFIID riid, void **ppvHeap) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pHeap, ((WrappedID3D12Heap1 *)*ppvHeap)->GetResourceID()) - .TypedAs("ID3D12Heap *"); + .TypedAs("ID3D12Heap *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1456,12 +1456,12 @@ bool WrappedID3D12Device::Serialise_CreatePlacedResource( { SERIALISE_ELEMENT(pHeap); SERIALISE_ELEMENT(HeapOffset); - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); SERIALISE_ELEMENT(InitialState); SERIALISE_ELEMENT_OPT(pOptimizedClearValue); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pResource, ((WrappedID3D12Resource1 *)*ppvResource)->GetResourceID()) - .TypedAs("ID3D12Resource *"); + .TypedAs("ID3D12Resource *"_lit); SERIALISE_ELEMENT_LOCAL(gpuAddress, ((WrappedID3D12Resource1 *)*ppvResource)->GetGPUVirtualAddressIfBuffer()) @@ -1649,9 +1649,9 @@ bool WrappedID3D12Device::Serialise_CreateFence(SerialiserType &ser, UINT64 Init { SERIALISE_ELEMENT(InitialValue); SERIALISE_ELEMENT(Flags); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pFence, ((WrappedID3D12Fence1 *)*ppFence)->GetResourceID()) - .TypedAs("ID3D12Fence *"); + .TypedAs("ID3D12Fence *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1738,10 +1738,10 @@ bool WrappedID3D12Device::Serialise_CreateQueryHeap(SerialiserType &ser, const D3D12_QUERY_HEAP_DESC *pDesc, REFIID riid, void **ppvHeap) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pQueryHeap, ((WrappedID3D12QueryHeap *)*ppvHeap)->GetResourceID()) - .TypedAs("ID3D12QueryHeap *"); + .TypedAs("ID3D12QueryHeap *"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1816,12 +1816,12 @@ bool WrappedID3D12Device::Serialise_CreateCommandSignature(SerialiserType &ser, ID3D12RootSignature *pRootSignature, REFIID riid, void **ppvCommandSignature) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); SERIALISE_ELEMENT(pRootSignature); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pCommandSignature, ((WrappedID3D12CommandSignature *)*ppvCommandSignature)->GetResourceID()) - .TypedAs("ID3D12CommandSignature *"); + .TypedAs("ID3D12CommandSignature *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d12/d3d12_device_wrap2.cpp b/renderdoc/driver/d3d12/d3d12_device_wrap2.cpp index 63702188a..f8d96a0fd 100644 --- a/renderdoc/driver/d3d12/d3d12_device_wrap2.cpp +++ b/renderdoc/driver/d3d12/d3d12_device_wrap2.cpp @@ -32,11 +32,11 @@ bool WrappedID3D12Device::Serialise_CreatePipelineState(SerialiserType &ser, REFIID riid, void **ppPipelineState) { SERIALISE_ELEMENT_LOCAL(Descriptor, D3D12_EXPANDED_PIPELINE_STATE_STREAM_DESC(*pDesc)) - .Named("pDesc"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + .Named("pDesc"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pPipelineState, ((WrappedID3D12PipelineState *)*ppPipelineState)->GetResourceID()) - .TypedAs("ID3D12PipelineState *"); + .TypedAs("ID3D12PipelineState *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d12/d3d12_device_wrap4.cpp b/renderdoc/driver/d3d12/d3d12_device_wrap4.cpp index fa5dfab3f..492f26b38 100644 --- a/renderdoc/driver/d3d12/d3d12_device_wrap4.cpp +++ b/renderdoc/driver/d3d12/d3d12_device_wrap4.cpp @@ -38,10 +38,10 @@ bool WrappedID3D12Device::Serialise_CreateCommandList1(SerialiserType &ser, UINT SERIALISE_ELEMENT(nodeMask); SERIALISE_ELEMENT(type); SERIALISE_ELEMENT(flags); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pCommandList, ((WrappedID3D12GraphicsCommandList *)*ppCommandList)->GetResourceID()) - .TypedAs("ID3D12GraphicsCommandList *"); + .TypedAs("ID3D12GraphicsCommandList *"_lit); // this chunk is purely for user information and consistency, the command buffer we allocate is // a dummy and is not used for anything. @@ -194,16 +194,16 @@ bool WrappedID3D12Device::Serialise_CreateCommittedResource1( const D3D12_CLEAR_VALUE *pOptimizedClearValue, ID3D12ProtectedResourceSession *pProtectedSession, REFIID riidResource, void **ppvResource) { - SERIALISE_ELEMENT_LOCAL(props, *pHeapProperties).Named("pHeapProperties"); + SERIALISE_ELEMENT_LOCAL(props, *pHeapProperties).Named("pHeapProperties"_lit); SERIALISE_ELEMENT(HeapFlags); - SERIALISE_ELEMENT_LOCAL(desc, *pDesc).Named("pDesc"); + SERIALISE_ELEMENT_LOCAL(desc, *pDesc).Named("pDesc"_lit); SERIALISE_ELEMENT(InitialResourceState); SERIALISE_ELEMENT_OPT(pOptimizedClearValue); // placeholder for future use if we properly capture & replay protected sessions - SERIALISE_ELEMENT_LOCAL(ProtectedSession, ResourceId()).Named("pProtectedSession"); - SERIALISE_ELEMENT_LOCAL(guid, riidResource).Named("riidResource"); + SERIALISE_ELEMENT_LOCAL(ProtectedSession, ResourceId()).Named("pProtectedSession"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riidResource).Named("riidResource"_lit); SERIALISE_ELEMENT_LOCAL(pResource, ((WrappedID3D12Resource1 *)*ppvResource)->GetResourceID()) - .TypedAs("ID3D12Resource *"); + .TypedAs("ID3D12Resource *"_lit); SERIALISE_ELEMENT_LOCAL(gpuAddress, ((WrappedID3D12Resource1 *)*ppvResource)->GetGPUVirtualAddressIfBuffer()) @@ -384,12 +384,12 @@ bool WrappedID3D12Device::Serialise_CreateHeap1(SerialiserType &ser, const D3D12 ID3D12ProtectedResourceSession *pProtectedSession, REFIID riid, void **ppvHeap) { - SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"); + SERIALISE_ELEMENT_LOCAL(Descriptor, *pDesc).Named("pDesc"_lit); // placeholder for future use if we properly capture & replay protected sessions - SERIALISE_ELEMENT_LOCAL(ProtectedSession, ResourceId()).Named("pProtectedSession"); - SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"); + SERIALISE_ELEMENT_LOCAL(ProtectedSession, ResourceId()).Named("pProtectedSession"_lit); + SERIALISE_ELEMENT_LOCAL(guid, riid).Named("riid"_lit); SERIALISE_ELEMENT_LOCAL(pHeap, ((WrappedID3D12Heap1 *)*ppvHeap)->GetResourceID()) - .TypedAs("ID3D12Heap *"); + .TypedAs("ID3D12Heap *"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/d3d12/d3d12_initstate.cpp b/renderdoc/driver/d3d12/d3d12_initstate.cpp index 26d0c2059..9e1fb20dc 100644 --- a/renderdoc/driver/d3d12/d3d12_initstate.cpp +++ b/renderdoc/driver/d3d12/d3d12_initstate.cpp @@ -395,7 +395,7 @@ bool D3D12ResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceI bool ret = true; - SERIALISE_ELEMENT(id).TypedAs("ID3D12DeviceChild *"); + SERIALISE_ELEMENT(id).TypedAs("ID3D12DeviceChild *"_lit); SERIALISE_ELEMENT_LOCAL(type, record->type); if(IsReplayingAndReading()) @@ -584,7 +584,7 @@ bool D3D12ResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceI // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("ResourceContents", ResourceContents, ContentsLength, SerialiserFlags::NoFlags); + ser.Serialise("ResourceContents"_lit, ResourceContents, ContentsLength, SerialiserFlags::NoFlags); if(mappedBuffer) mappedBuffer->Unmap(0, NULL); diff --git a/renderdoc/driver/d3d12/d3d12_manager.cpp b/renderdoc/driver/d3d12/d3d12_manager.cpp index 02c082529..c612c9f9d 100644 --- a/renderdoc/driver/d3d12/d3d12_manager.cpp +++ b/renderdoc/driver/d3d12/d3d12_manager.cpp @@ -693,7 +693,7 @@ void D3D12ResourceManager::SerialiseResourceStates(SerialiserType &ser, for(uint32_t i = 0; i < NumMems; i++) { - SERIALISE_ELEMENT_LOCAL(Resource, srcit->first).TypedAs("ID3D12Resource *"); + SERIALISE_ELEMENT_LOCAL(Resource, srcit->first).TypedAs("ID3D12Resource *"_lit); SERIALISE_ELEMENT_LOCAL(States, srcit->second); ResourceId liveid; diff --git a/renderdoc/driver/d3d12/d3d12_serialise.cpp b/renderdoc/driver/d3d12/d3d12_serialise.cpp index c7d9ad0f9..8005d2751 100644 --- a/renderdoc/driver/d3d12/d3d12_serialise.cpp +++ b/renderdoc/driver/d3d12/d3d12_serialise.cpp @@ -36,7 +36,7 @@ enum D3D12ResourceBarrierSubresource DECLARE_REFLECTION_ENUM(D3D12ResourceBarrierSubresource); template <> -std::string DoStringise(const D3D12ResourceBarrierSubresource &el) +rdcstr DoStringise(const D3D12ResourceBarrierSubresource &el) { RDCCOMPILE_ASSERT(sizeof(D3D12ResourceBarrierSubresource) == sizeof(uint32_t), "Enum isn't uint sized"); @@ -54,7 +54,7 @@ enum D3D12ComponentMapping DECLARE_REFLECTION_ENUM(D3D12ComponentMapping); template <> -std::string DoStringise(const D3D12ComponentMapping &el) +rdcstr DoStringise(const D3D12ComponentMapping &el) { RDCCOMPILE_ASSERT(sizeof(D3D12ComponentMapping) == sizeof(uint32_t), "Enum isn't uint sized"); @@ -170,8 +170,8 @@ void DoSerialise(SerialiserType &ser, DynamicDescriptorCopy &el) src = ToPortableHandle(el.src); } - ser.Serialise("dst", dst); - ser.Serialise("src", src); + ser.Serialise("dst"_lit, dst); + ser.Serialise("src"_lit, src); if(ser.IsReading()) { @@ -199,8 +199,8 @@ void DoSerialise(SerialiserType &ser, D3D12BufferLocation &el) if(ser.IsWriting()) WrappedID3D12Resource1::GetResIDFromAddr(el.Location, buffer, offs); - ser.Serialise("Buffer", buffer); - ser.Serialise("Offset", offs); + ser.Serialise("Buffer"_lit, buffer); + ser.Serialise("Offset"_lit, offs); if(ser.IsReading()) { @@ -215,12 +215,12 @@ template void DoSerialise(SerialiserType &ser, D3D12Descriptor &el) { D3D12DescriptorType type = el.GetType(); - ser.Serialise("type", type); + ser.Serialise("type"_lit, type); ID3D12DescriptorHeap *heap = (ID3D12DescriptorHeap *)el.data.samp.heap; - ser.Serialise("heap", heap); - ser.Serialise("index", el.data.samp.idx); + ser.Serialise("heap"_lit, heap); + ser.Serialise("index"_lit, el.data.samp.idx); if(ser.IsReading()) { @@ -239,18 +239,18 @@ void DoSerialise(SerialiserType &ser, D3D12Descriptor &el) { case D3D12DescriptorType::Sampler: { - ser.Serialise("Descriptor", el.data.samp.desc); + ser.Serialise("Descriptor"_lit, el.data.samp.desc); RDCASSERTEQUAL(el.GetType(), D3D12DescriptorType::Sampler); break; } case D3D12DescriptorType::CBV: { - ser.Serialise("Descriptor", el.data.nonsamp.cbv); + ser.Serialise("Descriptor"_lit, el.data.nonsamp.cbv); break; } case D3D12DescriptorType::SRV: { - ser.Serialise("Resource", el.data.nonsamp.resource).TypedAs("ID3D12Resource *"); + ser.Serialise("Resource"_lit, el.data.nonsamp.resource).TypedAs("ID3D12Resource *"_lit); // convert to Live ID on replay if(ser.IsReading()) @@ -262,14 +262,14 @@ void DoSerialise(SerialiserType &ser, D3D12Descriptor &el) D3D12_SHADER_RESOURCE_VIEW_DESC desc; if(ser.IsWriting()) desc = el.data.nonsamp.srv.AsDesc(); - ser.Serialise("Descriptor", desc); + ser.Serialise("Descriptor"_lit, desc); if(ser.IsReading()) el.data.nonsamp.srv.Init(desc); break; } case D3D12DescriptorType::RTV: { - ser.Serialise("Resource", el.data.nonsamp.resource).TypedAs("ID3D12Resource *"); + ser.Serialise("Resource"_lit, el.data.nonsamp.resource).TypedAs("ID3D12Resource *"_lit); // convert to Live ID on replay if(ser.IsReading()) @@ -277,12 +277,12 @@ void DoSerialise(SerialiserType &ser, D3D12Descriptor &el) ? rm->GetLiveID(el.data.nonsamp.resource) : ResourceId(); - ser.Serialise("Descriptor", el.data.nonsamp.rtv); + ser.Serialise("Descriptor"_lit, el.data.nonsamp.rtv); break; } case D3D12DescriptorType::DSV: { - ser.Serialise("Resource", el.data.nonsamp.resource).TypedAs("ID3D12Resource *"); + ser.Serialise("Resource"_lit, el.data.nonsamp.resource).TypedAs("ID3D12Resource *"_lit); // convert to Live ID on replay if(ser.IsReading()) @@ -290,13 +290,14 @@ void DoSerialise(SerialiserType &ser, D3D12Descriptor &el) ? rm->GetLiveID(el.data.nonsamp.resource) : ResourceId(); - ser.Serialise("Descriptor", el.data.nonsamp.dsv); + ser.Serialise("Descriptor"_lit, el.data.nonsamp.dsv); break; } case D3D12DescriptorType::UAV: { - ser.Serialise("Resource", el.data.nonsamp.resource).TypedAs("ID3D12Resource *"); - ser.Serialise("CounterResource", el.data.nonsamp.counterResource).TypedAs("ID3D12Resource *"); + ser.Serialise("Resource"_lit, el.data.nonsamp.resource).TypedAs("ID3D12Resource *"_lit); + ser.Serialise("CounterResource"_lit, el.data.nonsamp.counterResource) + .TypedAs("ID3D12Resource *"_lit); // convert to Live ID on replay if(ser.IsReading()) @@ -313,7 +314,7 @@ void DoSerialise(SerialiserType &ser, D3D12Descriptor &el) D3D12_UNORDERED_ACCESS_VIEW_DESC desc; if(ser.IsWriting()) desc = el.data.nonsamp.uav.AsDesc(); - ser.Serialise("Descriptor", desc); + ser.Serialise("Descriptor"_lit, desc); if(ser.IsReading()) el.data.nonsamp.uav.Init(desc); break; @@ -400,7 +401,7 @@ void DoSerialise(SerialiserType &ser, D3D12_SHADER_BYTECODE &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t BytecodeLength = el.BytecodeLength; - ser.Serialise("BytecodeLength", BytecodeLength); + ser.Serialise("BytecodeLength"_lit, BytecodeLength); if(ser.IsReading()) el.BytecodeLength = (size_t)BytecodeLength; } @@ -563,7 +564,7 @@ void DoSerialise(SerialiserType &ser, D3D12_CACHED_PIPELINE_STATE &el) // don't serialise these, just set to NULL/0. See the definition of SERIALISE_MEMBER_DUMMY SERIALISE_MEMBER_ARRAY_EMPTY(pCachedBlob); uint64_t CachedBlobSizeInBytes = 0; - ser.Serialise("CachedBlobSizeInBytes", CachedBlobSizeInBytes); + ser.Serialise("CachedBlobSizeInBytes"_lit, CachedBlobSizeInBytes); if(ser.IsReading()) el.CachedBlobSizeInBytes = (SIZE_T)CachedBlobSizeInBytes; @@ -1142,8 +1143,8 @@ void DoSerialise(SerialiserType &ser, D3D12_RANGE &el) uint64_t Begin = el.Begin; uint64_t End = el.End; - ser.Serialise("Begin", Begin); - ser.Serialise("End", End); + ser.Serialise("Begin"_lit, Begin); + ser.Serialise("End"_lit, End); if(ser.IsReading()) { diff --git a/renderdoc/driver/d3d12/d3d12_stringise.cpp b/renderdoc/driver/d3d12/d3d12_stringise.cpp index b607b9849..e993a6196 100644 --- a/renderdoc/driver/d3d12/d3d12_stringise.cpp +++ b/renderdoc/driver/d3d12/d3d12_stringise.cpp @@ -26,7 +26,7 @@ #include "d3d12_resources.h" template <> -std::string DoStringise(const D3D12Chunk &el) +rdcstr DoStringise(const D3D12Chunk &el) { RDCCOMPILE_ASSERT((uint32_t)D3D12Chunk::Max == 1102, "Chunks changed without updating names"); RDCCOMPILE_ASSERT((uint32_t)D3D12Chunk::List_EndRenderPass == 1101, @@ -194,7 +194,7 @@ std::string DoStringise(const D3D12Chunk &el) } template <> -std::string DoStringise(const D3D12DescriptorType &el) +rdcstr DoStringise(const D3D12DescriptorType &el) { if((uint32_t)el < (uint32_t)D3D12DescriptorType::CBV) return "Sampler"; @@ -212,7 +212,7 @@ std::string DoStringise(const D3D12DescriptorType &el) } template <> -std::string DoStringise(const D3D12ResourceType &el) +rdcstr DoStringise(const D3D12ResourceType &el) { BEGIN_ENUM_STRINGISE(D3D12ResourceType); { @@ -236,7 +236,7 @@ std::string DoStringise(const D3D12ResourceType &el) } template <> -std::string DoStringise(const D3D12_HEAP_TYPE &el) +rdcstr DoStringise(const D3D12_HEAP_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_HEAP_TYPE); { @@ -249,7 +249,7 @@ std::string DoStringise(const D3D12_HEAP_TYPE &el) } template <> -std::string DoStringise(const D3D12_CPU_PAGE_PROPERTY &el) +rdcstr DoStringise(const D3D12_CPU_PAGE_PROPERTY &el) { BEGIN_ENUM_STRINGISE(D3D12_CPU_PAGE_PROPERTY); { @@ -262,7 +262,7 @@ std::string DoStringise(const D3D12_CPU_PAGE_PROPERTY &el) } template <> -std::string DoStringise(const D3D12_MEMORY_POOL &el) +rdcstr DoStringise(const D3D12_MEMORY_POOL &el) { BEGIN_ENUM_STRINGISE(D3D12_MEMORY_POOL); { @@ -274,7 +274,7 @@ std::string DoStringise(const D3D12_MEMORY_POOL &el) } template <> -std::string DoStringise(const D3D12_QUERY_HEAP_TYPE &el) +rdcstr DoStringise(const D3D12_QUERY_HEAP_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_QUERY_HEAP_TYPE); { @@ -287,7 +287,7 @@ std::string DoStringise(const D3D12_QUERY_HEAP_TYPE &el) } template <> -std::string DoStringise(const D3D12_QUERY_TYPE &el) +rdcstr DoStringise(const D3D12_QUERY_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_QUERY_TYPE); { @@ -304,7 +304,7 @@ std::string DoStringise(const D3D12_QUERY_TYPE &el) } template <> -std::string DoStringise(const D3D12_PREDICATION_OP &el) +rdcstr DoStringise(const D3D12_PREDICATION_OP &el) { BEGIN_ENUM_STRINGISE(D3D12_PREDICATION_OP); { @@ -315,7 +315,7 @@ std::string DoStringise(const D3D12_PREDICATION_OP &el) } template <> -std::string DoStringise(const D3D12_DESCRIPTOR_HEAP_TYPE &el) +rdcstr DoStringise(const D3D12_DESCRIPTOR_HEAP_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_DESCRIPTOR_HEAP_TYPE); { @@ -328,7 +328,7 @@ std::string DoStringise(const D3D12_DESCRIPTOR_HEAP_TYPE &el) } template <> -std::string DoStringise(const D3D12_RESOURCE_BARRIER_TYPE &el) +rdcstr DoStringise(const D3D12_RESOURCE_BARRIER_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_RESOURCE_BARRIER_TYPE); { @@ -340,7 +340,7 @@ std::string DoStringise(const D3D12_RESOURCE_BARRIER_TYPE &el) } template <> -std::string DoStringise(const D3D12_SRV_DIMENSION &el) +rdcstr DoStringise(const D3D12_SRV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D12_SRV_DIMENSION); { @@ -360,7 +360,7 @@ std::string DoStringise(const D3D12_SRV_DIMENSION &el) } template <> -std::string DoStringise(const D3D12_RTV_DIMENSION &el) +rdcstr DoStringise(const D3D12_RTV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D12_RTV_DIMENSION); { @@ -378,7 +378,7 @@ std::string DoStringise(const D3D12_RTV_DIMENSION &el) } template <> -std::string DoStringise(const D3D12_UAV_DIMENSION &el) +rdcstr DoStringise(const D3D12_UAV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D12_UAV_DIMENSION); { @@ -393,7 +393,7 @@ std::string DoStringise(const D3D12_UAV_DIMENSION &el) } template <> -std::string DoStringise(const D3D12_DSV_DIMENSION &el) +rdcstr DoStringise(const D3D12_DSV_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D12_DSV_DIMENSION); { @@ -409,7 +409,7 @@ std::string DoStringise(const D3D12_DSV_DIMENSION &el) } template <> -std::string DoStringise(const D3D12_FILTER &el) +rdcstr DoStringise(const D3D12_FILTER &el) { BEGIN_ENUM_STRINGISE(D3D12_FILTER); { @@ -454,7 +454,7 @@ std::string DoStringise(const D3D12_FILTER &el) } template <> -std::string DoStringise(const D3D12_TEXTURE_ADDRESS_MODE &el) +rdcstr DoStringise(const D3D12_TEXTURE_ADDRESS_MODE &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -472,7 +472,7 @@ std::string DoStringise(const D3D12_TEXTURE_ADDRESS_MODE &el) } template <> -std::string DoStringise(const D3D12_BLEND &el) +rdcstr DoStringise(const D3D12_BLEND &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -502,7 +502,7 @@ std::string DoStringise(const D3D12_BLEND &el) } template <> -std::string DoStringise(const D3D12_BLEND_OP &el) +rdcstr DoStringise(const D3D12_BLEND_OP &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -520,7 +520,7 @@ std::string DoStringise(const D3D12_BLEND_OP &el) } template <> -std::string DoStringise(const D3D12_LOGIC_OP &el) +rdcstr DoStringise(const D3D12_LOGIC_OP &el) { BEGIN_ENUM_STRINGISE(D3D12_LOGIC_OP); { @@ -545,7 +545,7 @@ std::string DoStringise(const D3D12_LOGIC_OP &el) } template <> -std::string DoStringise(const D3D12_FILL_MODE &el) +rdcstr DoStringise(const D3D12_FILL_MODE &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -560,7 +560,7 @@ std::string DoStringise(const D3D12_FILL_MODE &el) } template <> -std::string DoStringise(const D3D12_CULL_MODE &el) +rdcstr DoStringise(const D3D12_CULL_MODE &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -576,7 +576,7 @@ std::string DoStringise(const D3D12_CULL_MODE &el) } template <> -std::string DoStringise(const D3D12_CONSERVATIVE_RASTERIZATION_MODE &el) +rdcstr DoStringise(const D3D12_CONSERVATIVE_RASTERIZATION_MODE &el) { BEGIN_ENUM_STRINGISE(D3D12_CONSERVATIVE_RASTERIZATION_MODE); { @@ -587,7 +587,7 @@ std::string DoStringise(const D3D12_CONSERVATIVE_RASTERIZATION_MODE &el) } template <> -std::string DoStringise(const D3D12_COMPARISON_FUNC &el) +rdcstr DoStringise(const D3D12_COMPARISON_FUNC &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -608,7 +608,7 @@ std::string DoStringise(const D3D12_COMPARISON_FUNC &el) } template <> -std::string DoStringise(const D3D12_DEPTH_WRITE_MASK &el) +rdcstr DoStringise(const D3D12_DEPTH_WRITE_MASK &el) { BEGIN_ENUM_STRINGISE(D3D12_DEPTH_WRITE_MASK); { @@ -619,7 +619,7 @@ std::string DoStringise(const D3D12_DEPTH_WRITE_MASK &el) } template <> -std::string DoStringise(const D3D12_STENCIL_OP &el) +rdcstr DoStringise(const D3D12_STENCIL_OP &el) { // possible for unused fields via 0-initialisation if((int)el == 0) @@ -640,7 +640,7 @@ std::string DoStringise(const D3D12_STENCIL_OP &el) } template <> -std::string DoStringise(const D3D12_INPUT_CLASSIFICATION &el) +rdcstr DoStringise(const D3D12_INPUT_CLASSIFICATION &el) { BEGIN_ENUM_STRINGISE(D3D12_INPUT_CLASSIFICATION); { @@ -651,7 +651,7 @@ std::string DoStringise(const D3D12_INPUT_CLASSIFICATION &el) } template <> -std::string DoStringise(const D3D12_INDEX_BUFFER_STRIP_CUT_VALUE &el) +rdcstr DoStringise(const D3D12_INDEX_BUFFER_STRIP_CUT_VALUE &el) { BEGIN_ENUM_STRINGISE(D3D12_INDEX_BUFFER_STRIP_CUT_VALUE); { @@ -663,7 +663,7 @@ std::string DoStringise(const D3D12_INDEX_BUFFER_STRIP_CUT_VALUE &el) } template <> -std::string DoStringise(const D3D12_PRIMITIVE_TOPOLOGY_TYPE &el) +rdcstr DoStringise(const D3D12_PRIMITIVE_TOPOLOGY_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_PRIMITIVE_TOPOLOGY_TYPE); { @@ -677,7 +677,7 @@ std::string DoStringise(const D3D12_PRIMITIVE_TOPOLOGY_TYPE &el) } template <> -std::string DoStringise(const D3D12_INDIRECT_ARGUMENT_TYPE &el) +rdcstr DoStringise(const D3D12_INDIRECT_ARGUMENT_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_INDIRECT_ARGUMENT_TYPE); { @@ -695,7 +695,7 @@ std::string DoStringise(const D3D12_INDIRECT_ARGUMENT_TYPE &el) } template <> -std::string DoStringise(const D3D12_COMMAND_LIST_TYPE &el) +rdcstr DoStringise(const D3D12_COMMAND_LIST_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_COMMAND_LIST_TYPE); { @@ -708,7 +708,7 @@ std::string DoStringise(const D3D12_COMMAND_LIST_TYPE &el) } template <> -std::string DoStringise(const D3D12_TEXTURE_COPY_TYPE &el) +rdcstr DoStringise(const D3D12_TEXTURE_COPY_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_TEXTURE_COPY_TYPE); { @@ -719,7 +719,7 @@ std::string DoStringise(const D3D12_TEXTURE_COPY_TYPE &el) } template <> -std::string DoStringise(const D3D12_RESOURCE_DIMENSION &el) +rdcstr DoStringise(const D3D12_RESOURCE_DIMENSION &el) { BEGIN_ENUM_STRINGISE(D3D12_RESOURCE_DIMENSION); { @@ -733,7 +733,7 @@ std::string DoStringise(const D3D12_RESOURCE_DIMENSION &el) } template <> -std::string DoStringise(const D3D12_TEXTURE_LAYOUT &el) +rdcstr DoStringise(const D3D12_TEXTURE_LAYOUT &el) { BEGIN_ENUM_STRINGISE(D3D12_TEXTURE_LAYOUT); { @@ -746,7 +746,7 @@ std::string DoStringise(const D3D12_TEXTURE_LAYOUT &el) } template <> -std::string DoStringise(const D3D12_TILED_RESOURCES_TIER &el) +rdcstr DoStringise(const D3D12_TILED_RESOURCES_TIER &el) { BEGIN_ENUM_STRINGISE(D3D12_TILED_RESOURCES_TIER); { @@ -759,7 +759,7 @@ std::string DoStringise(const D3D12_TILED_RESOURCES_TIER &el) } template <> -std::string DoStringise(const D3D12_RESOLVE_MODE &el) +rdcstr DoStringise(const D3D12_RESOLVE_MODE &el) { BEGIN_ENUM_STRINGISE(D3D12_RESOLVE_MODE); { @@ -772,7 +772,7 @@ std::string DoStringise(const D3D12_RESOLVE_MODE &el) } template <> -std::string DoStringise(const D3D12_WRITEBUFFERIMMEDIATE_MODE &el) +rdcstr DoStringise(const D3D12_WRITEBUFFERIMMEDIATE_MODE &el) { BEGIN_ENUM_STRINGISE(D3D12_WRITEBUFFERIMMEDIATE_MODE); { @@ -784,7 +784,7 @@ std::string DoStringise(const D3D12_WRITEBUFFERIMMEDIATE_MODE &el) } template <> -std::string DoStringise(const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE &el) +rdcstr DoStringise(const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE); { @@ -797,7 +797,7 @@ std::string DoStringise(const D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE &el) } template <> -std::string DoStringise(const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE &el) +rdcstr DoStringise(const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D12_RENDER_PASS_ENDING_ACCESS_TYPE); { @@ -810,7 +810,7 @@ std::string DoStringise(const D3D12_RENDER_PASS_ENDING_ACCESS_TYPE &el) } template <> -std::string DoStringise(const D3D12_CLEAR_FLAGS &el) +rdcstr DoStringise(const D3D12_CLEAR_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_CLEAR_FLAGS); { @@ -821,7 +821,7 @@ std::string DoStringise(const D3D12_CLEAR_FLAGS &el) } template <> -std::string DoStringise(const D3D12_BUFFER_SRV_FLAGS &el) +rdcstr DoStringise(const D3D12_BUFFER_SRV_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_BUFFER_SRV_FLAGS); { @@ -833,7 +833,7 @@ std::string DoStringise(const D3D12_BUFFER_SRV_FLAGS &el) } template <> -std::string DoStringise(const D3D12_DSV_FLAGS &el) +rdcstr DoStringise(const D3D12_DSV_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_DSV_FLAGS); { @@ -846,7 +846,7 @@ std::string DoStringise(const D3D12_DSV_FLAGS &el) } template <> -std::string DoStringise(const D3D12_BUFFER_UAV_FLAGS &el) +rdcstr DoStringise(const D3D12_BUFFER_UAV_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_BUFFER_UAV_FLAGS); { @@ -858,7 +858,7 @@ std::string DoStringise(const D3D12_BUFFER_UAV_FLAGS &el) } template <> -std::string DoStringise(const D3D12_HEAP_FLAGS &el) +rdcstr DoStringise(const D3D12_HEAP_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_HEAP_FLAGS); { @@ -879,7 +879,7 @@ std::string DoStringise(const D3D12_HEAP_FLAGS &el) } template <> -std::string DoStringise(const D3D12_FENCE_FLAGS &el) +rdcstr DoStringise(const D3D12_FENCE_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_FENCE_FLAGS); { @@ -892,7 +892,7 @@ std::string DoStringise(const D3D12_FENCE_FLAGS &el) } template <> -std::string DoStringise(const D3D12_DESCRIPTOR_HEAP_FLAGS &el) +rdcstr DoStringise(const D3D12_DESCRIPTOR_HEAP_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_DESCRIPTOR_HEAP_FLAGS); { @@ -904,7 +904,7 @@ std::string DoStringise(const D3D12_DESCRIPTOR_HEAP_FLAGS &el) } template <> -std::string DoStringise(const D3D12_RESOURCE_BARRIER_FLAGS &el) +rdcstr DoStringise(const D3D12_RESOURCE_BARRIER_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_RESOURCE_BARRIER_FLAGS); { @@ -917,7 +917,7 @@ std::string DoStringise(const D3D12_RESOURCE_BARRIER_FLAGS &el) } template <> -std::string DoStringise(const D3D12_RESOURCE_STATES &el) +rdcstr DoStringise(const D3D12_RESOURCE_STATES &el) { BEGIN_BITFIELD_STRINGISE(D3D12_RESOURCE_STATES); { @@ -944,7 +944,7 @@ std::string DoStringise(const D3D12_RESOURCE_STATES &el) } template <> -std::string DoStringise(const D3D12_PIPELINE_STATE_FLAGS &el) +rdcstr DoStringise(const D3D12_PIPELINE_STATE_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_PIPELINE_STATE_FLAGS); { @@ -956,7 +956,7 @@ std::string DoStringise(const D3D12_PIPELINE_STATE_FLAGS &el) } template <> -std::string DoStringise(const D3D12_RESOURCE_FLAGS &el) +rdcstr DoStringise(const D3D12_RESOURCE_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_RESOURCE_FLAGS); { @@ -973,7 +973,7 @@ std::string DoStringise(const D3D12_RESOURCE_FLAGS &el) } template <> -std::string DoStringise(const D3D12_COMMAND_QUEUE_FLAGS &el) +rdcstr DoStringise(const D3D12_COMMAND_QUEUE_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_COMMAND_QUEUE_FLAGS); { @@ -985,7 +985,7 @@ std::string DoStringise(const D3D12_COMMAND_QUEUE_FLAGS &el) } template <> -std::string DoStringise(const D3D12_TILE_COPY_FLAGS &el) +rdcstr DoStringise(const D3D12_TILE_COPY_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_TILE_COPY_FLAGS); { @@ -999,7 +999,7 @@ std::string DoStringise(const D3D12_TILE_COPY_FLAGS &el) } template <> -std::string DoStringise(const D3D12_TILE_MAPPING_FLAGS &el) +rdcstr DoStringise(const D3D12_TILE_MAPPING_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_TILE_MAPPING_FLAGS); { @@ -1011,7 +1011,7 @@ std::string DoStringise(const D3D12_TILE_MAPPING_FLAGS &el) } template <> -std::string DoStringise(const D3D12_TILE_RANGE_FLAGS &el) +rdcstr DoStringise(const D3D12_TILE_RANGE_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_TILE_RANGE_FLAGS); { @@ -1025,7 +1025,7 @@ std::string DoStringise(const D3D12_TILE_RANGE_FLAGS &el) } template <> -std::string DoStringise(const D3D12_COLOR_WRITE_ENABLE &el) +rdcstr DoStringise(const D3D12_COLOR_WRITE_ENABLE &el) { BEGIN_BITFIELD_STRINGISE(D3D12_COLOR_WRITE_ENABLE); { @@ -1040,7 +1040,7 @@ std::string DoStringise(const D3D12_COLOR_WRITE_ENABLE &el) } template <> -std::string DoStringise(const D3D12_VIEW_INSTANCING_FLAGS &el) +rdcstr DoStringise(const D3D12_VIEW_INSTANCING_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_VIEW_INSTANCING_FLAGS); { @@ -1052,7 +1052,7 @@ std::string DoStringise(const D3D12_VIEW_INSTANCING_FLAGS &el) } template <> -std::string DoStringise(const D3D12_COMMAND_LIST_FLAGS &el) +rdcstr DoStringise(const D3D12_COMMAND_LIST_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_COMMAND_LIST_FLAGS); { @@ -1062,7 +1062,7 @@ std::string DoStringise(const D3D12_COMMAND_LIST_FLAGS &el) } template <> -std::string DoStringise(const D3D12_RENDER_PASS_FLAGS &el) +rdcstr DoStringise(const D3D12_RENDER_PASS_FLAGS &el) { BEGIN_BITFIELD_STRINGISE(D3D12_RENDER_PASS_FLAGS); { diff --git a/renderdoc/driver/dxgi/dxgi_stringise.cpp b/renderdoc/driver/dxgi/dxgi_stringise.cpp index 5d5a2c639..9b9f00b7a 100644 --- a/renderdoc/driver/dxgi/dxgi_stringise.cpp +++ b/renderdoc/driver/dxgi/dxgi_stringise.cpp @@ -27,7 +27,7 @@ #include "dxgi_common.h" template <> -std::string DoStringise(const DXGI_FORMAT &el) +rdcstr DoStringise(const DXGI_FORMAT &el) { BEGIN_ENUM_STRINGISE(DXGI_FORMAT); { @@ -158,7 +158,7 @@ std::string DoStringise(const DXGI_FORMAT &el) // not technically DXGI, but makes more sense to have it here common between D3D versions template <> -std::string DoStringise(const IID &el) +rdcstr DoStringise(const IID &el) { return StringFormat::Fmt("GUID {%08x-%04hx-%04hx-%02x%02x-%02x%02x%02x%02x%02x%02x}", el.Data1, el.Data2, el.Data3, el.Data4[0], el.Data4[1], el.Data4[2], el.Data4[3], @@ -166,7 +166,7 @@ std::string DoStringise(const IID &el) } template <> -std::string DoStringise(const D3D_FEATURE_LEVEL &el) +rdcstr DoStringise(const D3D_FEATURE_LEVEL &el) { BEGIN_ENUM_STRINGISE(D3D_FEATURE_LEVEL); { @@ -184,7 +184,7 @@ std::string DoStringise(const D3D_FEATURE_LEVEL &el) } template <> -std::string DoStringise(const D3D_DRIVER_TYPE &el) +rdcstr DoStringise(const D3D_DRIVER_TYPE &el) { BEGIN_ENUM_STRINGISE(D3D_DRIVER_TYPE); { @@ -199,7 +199,7 @@ std::string DoStringise(const D3D_DRIVER_TYPE &el) // for HRESULT template <> -std::string DoStringise(const long &el) +rdcstr DoStringise(const long &el) { HRESULT hr = (HRESULT)el; diff --git a/renderdoc/driver/gl/cgl_platform.cpp b/renderdoc/driver/gl/cgl_platform.cpp index d6ea47338..f9b4bd61c 100644 --- a/renderdoc/driver/gl/cgl_platform.cpp +++ b/renderdoc/driver/gl/cgl_platform.cpp @@ -68,7 +68,7 @@ struct QuadGL }; template <> -std::string DoStringise(const CGLError &el) +rdcstr DoStringise(const CGLError &el) { BEGIN_ENUM_STRINGISE(CGLError); { diff --git a/renderdoc/driver/gl/gl_driver.cpp b/renderdoc/driver/gl/gl_driver.cpp index 14a0ad8c5..cb5003842 100644 --- a/renderdoc/driver/gl/gl_driver.cpp +++ b/renderdoc/driver/gl/gl_driver.cpp @@ -2923,7 +2923,7 @@ bool WrappedOpenGL::ProcessChunk(ReadSerialiser &ser, GLChunk chunk) { ResourceId vao, fbo; SERIALISE_ELEMENT(vao).Hidden(); - SERIALISE_ELEMENT(fbo).Named("FBO 0 ID"); + SERIALISE_ELEMENT(fbo).Named("FBO 0 ID"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/gl_initstate.cpp b/renderdoc/driver/gl/gl_initstate.cpp index 654184383..ba70c2d04 100644 --- a/renderdoc/driver/gl/gl_initstate.cpp +++ b/renderdoc/driver/gl/gl_initstate.cpp @@ -235,7 +235,7 @@ void GLResourceManager::ContextPrepare_InitialState(GLResource res) SCOPED_SERIALISE_CHUNK(SystemChunk::InitialContents); - SERIALISE_ELEMENT(id).TypedAs("GLResource"); + SERIALISE_ELEMENT(id).TypedAs("GLResource"_lit); SERIALISE_ELEMENT(res.Namespace); SerialiseProgramBindings(ser, CaptureState::ActiveCapturing, res.name); @@ -1071,7 +1071,7 @@ uint64_t GLResourceManager::GetSize_InitialState(ResourceId resid, const GLIniti GLResource res = GetCurrentResource(resid); - SERIALISE_ELEMENT(resid).TypedAs("GLResource"); + SERIALISE_ELEMENT(resid).TypedAs("GLResource"_lit); SERIALISE_ELEMENT(res.Namespace); SerialiseProgramBindings(ser, CaptureState::ActiveCapturing, res.name); @@ -1176,7 +1176,7 @@ bool GLResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceId i if(initial) initContents = *initial; - SERIALISE_ELEMENT(id).TypedAs("GLResource"); + SERIALISE_ELEMENT(id).TypedAs("GLResource"_lit); SERIALISE_ELEMENT_LOCAL(Type, initial->type); if(IsReplayingAndReading()) @@ -1220,7 +1220,7 @@ bool GLResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceId i // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("BufferContents", BufferContents, BufferContentsSize, SerialiserFlags::NoFlags); + ser.Serialise("BufferContents"_lit, BufferContents, BufferContentsSize, SerialiserFlags::NoFlags); if(mappedBuffer.name) GL.glUnmapNamedBufferEXT(mappedBuffer.name); @@ -1648,7 +1648,7 @@ bool GLResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceId i } // serialise without allocating memory as we already have our scratch buf sized. - ser.Serialise("SubresourceContents", scratchBuf, size, SerialiserFlags::NoFlags); + ser.Serialise("SubresourceContents"_lit, scratchBuf, size, SerialiserFlags::NoFlags); // on replay, restore the data into the initial contents texture if(IsReplayingAndReading() && !ser.IsErrored()) diff --git a/renderdoc/driver/gl/gl_program_iterate.cpp b/renderdoc/driver/gl/gl_program_iterate.cpp index d045dc7fa..e8d2b300c 100644 --- a/renderdoc/driver/gl/gl_program_iterate.cpp +++ b/renderdoc/driver/gl/gl_program_iterate.cpp @@ -250,24 +250,24 @@ void DoSerialise(SerialiserType &ser, ProgramUniformValue &el) if(ser.VersionAtLeast(0x1C)) { if(baseType == VarType::Float) - ser.Serialise("data", fv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, fv, elemCount, SerialiserFlags::NoFlags); else if(baseType == VarType::SInt) - ser.Serialise("data", iv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, iv, elemCount, SerialiserFlags::NoFlags); else if(baseType == VarType::UInt) - ser.Serialise("data", uv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, uv, elemCount, SerialiserFlags::NoFlags); else if(baseType == VarType::Double) - ser.Serialise("data", dv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, dv, elemCount, SerialiserFlags::NoFlags); } else { if(baseType == VarType::Double) - ser.Serialise("data", fv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, fv, elemCount, SerialiserFlags::NoFlags); else if(baseType == VarType::Float) - ser.Serialise("data", dv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, dv, elemCount, SerialiserFlags::NoFlags); else if(baseType == VarType::SInt) - ser.Serialise("data", iv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, iv, elemCount, SerialiserFlags::NoFlags); else if(baseType == VarType::UInt) - ser.Serialise("data", uv, elemCount, SerialiserFlags::NoFlags); + ser.Serialise("data"_lit, uv, elemCount, SerialiserFlags::NoFlags); } } @@ -563,7 +563,7 @@ static void ForAllProgramUniforms(SerialiserType *ser, CaptureState state, GLuin // now serialise all the bindings if we are serialising if(CheckConstParam(SerialiseUniforms) && ser) { - ser->Serialise("ProgramUniforms", serialisedUniforms); + ser->Serialise("ProgramUniforms"_lit, serialisedUniforms); } // if we are writing to a destination program and replaying, then apply the stored data from diff --git a/renderdoc/driver/gl/gl_renderstate.cpp b/renderdoc/driver/gl/gl_renderstate.cpp index 5f2d45a6d..fabb22b0b 100644 --- a/renderdoc/driver/gl/gl_renderstate.cpp +++ b/renderdoc/driver/gl/gl_renderstate.cpp @@ -29,44 +29,44 @@ struct EnableDisableCap { GLenum cap; - const char *name; + rdcliteral name; }; static const EnableDisableCap enable_disable_cap[] = { - {eGL_CLIP_DISTANCE0, "GL_CLIP_DISTANCE0"}, - {eGL_CLIP_DISTANCE1, "GL_CLIP_DISTANCE1"}, - {eGL_CLIP_DISTANCE2, "GL_CLIP_DISTANCE2"}, - {eGL_CLIP_DISTANCE3, "GL_CLIP_DISTANCE3"}, - {eGL_CLIP_DISTANCE4, "GL_CLIP_DISTANCE4"}, - {eGL_CLIP_DISTANCE5, "GL_CLIP_DISTANCE5"}, - {eGL_CLIP_DISTANCE6, "GL_CLIP_DISTANCE6"}, - {eGL_CLIP_DISTANCE7, "GL_CLIP_DISTANCE7"}, - {eGL_COLOR_LOGIC_OP, "GL_COLOR_LOGIC_OP"}, - {eGL_CULL_FACE, "GL_CULL_FACE"}, - {eGL_DEPTH_CLAMP, "GL_DEPTH_CLAMP"}, - {eGL_DEPTH_TEST, "GL_DEPTH_TEST"}, - {eGL_DEPTH_BOUNDS_TEST_EXT, "GL_DEPTH_BOUNDS_TEST_EXT"}, - {eGL_DITHER, "GL_DITHER"}, - {eGL_FRAMEBUFFER_SRGB, "GL_FRAMEBUFFER_SRGB"}, - {eGL_LINE_SMOOTH, "GL_LINE_SMOOTH"}, - {eGL_MULTISAMPLE, "GL_MULTISAMPLE"}, - {eGL_POLYGON_SMOOTH, "GL_POLYGON_SMOOTH"}, - {eGL_POLYGON_OFFSET_FILL, "GL_POLYGON_OFFSET_FILL"}, - {eGL_POLYGON_OFFSET_LINE, "GL_POLYGON_OFFSET_LINE"}, - {eGL_POLYGON_OFFSET_POINT, "GL_POLYGON_OFFSET_POINT"}, - {eGL_PROGRAM_POINT_SIZE, "GL_PROGRAM_POINT_SIZE"}, - {eGL_PRIMITIVE_RESTART, "GL_PRIMITIVE_RESTART"}, - {eGL_PRIMITIVE_RESTART_FIXED_INDEX, "GL_PRIMITIVE_RESTART_FIXED_INDEX"}, - {eGL_SAMPLE_ALPHA_TO_COVERAGE, "GL_SAMPLE_ALPHA_TO_COVERAGE"}, - {eGL_SAMPLE_ALPHA_TO_ONE, "GL_SAMPLE_ALPHA_TO_ONE"}, - {eGL_SAMPLE_COVERAGE, "GL_SAMPLE_COVERAGE"}, - {eGL_SAMPLE_MASK, "GL_SAMPLE_MASK"}, - {eGL_SAMPLE_SHADING, "GL_SAMPLE_SHADING"}, - {eGL_RASTER_MULTISAMPLE_EXT, "GL_RASTER_MULTISAMPLE_EXT"}, - {eGL_STENCIL_TEST, "GL_STENCIL_TEST"}, - {eGL_TEXTURE_CUBE_MAP_SEAMLESS, "GL_TEXTURE_CUBE_MAP_SEAMLESS"}, - {eGL_BLEND_ADVANCED_COHERENT_KHR, "GL_BLEND_ADVANCED_COHERENT_KHR"}, - {eGL_RASTERIZER_DISCARD, "GL_RASTERIZER_DISCARD"}, + {eGL_CLIP_DISTANCE0, "GL_CLIP_DISTANCE0"_lit}, + {eGL_CLIP_DISTANCE1, "GL_CLIP_DISTANCE1"_lit}, + {eGL_CLIP_DISTANCE2, "GL_CLIP_DISTANCE2"_lit}, + {eGL_CLIP_DISTANCE3, "GL_CLIP_DISTANCE3"_lit}, + {eGL_CLIP_DISTANCE4, "GL_CLIP_DISTANCE4"_lit}, + {eGL_CLIP_DISTANCE5, "GL_CLIP_DISTANCE5"_lit}, + {eGL_CLIP_DISTANCE6, "GL_CLIP_DISTANCE6"_lit}, + {eGL_CLIP_DISTANCE7, "GL_CLIP_DISTANCE7"_lit}, + {eGL_COLOR_LOGIC_OP, "GL_COLOR_LOGIC_OP"_lit}, + {eGL_CULL_FACE, "GL_CULL_FACE"_lit}, + {eGL_DEPTH_CLAMP, "GL_DEPTH_CLAMP"_lit}, + {eGL_DEPTH_TEST, "GL_DEPTH_TEST"_lit}, + {eGL_DEPTH_BOUNDS_TEST_EXT, "GL_DEPTH_BOUNDS_TEST_EXT"_lit}, + {eGL_DITHER, "GL_DITHER"_lit}, + {eGL_FRAMEBUFFER_SRGB, "GL_FRAMEBUFFER_SRGB"_lit}, + {eGL_LINE_SMOOTH, "GL_LINE_SMOOTH"_lit}, + {eGL_MULTISAMPLE, "GL_MULTISAMPLE"_lit}, + {eGL_POLYGON_SMOOTH, "GL_POLYGON_SMOOTH"_lit}, + {eGL_POLYGON_OFFSET_FILL, "GL_POLYGON_OFFSET_FILL"_lit}, + {eGL_POLYGON_OFFSET_LINE, "GL_POLYGON_OFFSET_LINE"_lit}, + {eGL_POLYGON_OFFSET_POINT, "GL_POLYGON_OFFSET_POINT"_lit}, + {eGL_PROGRAM_POINT_SIZE, "GL_PROGRAM_POINT_SIZE"_lit}, + {eGL_PRIMITIVE_RESTART, "GL_PRIMITIVE_RESTART"_lit}, + {eGL_PRIMITIVE_RESTART_FIXED_INDEX, "GL_PRIMITIVE_RESTART_FIXED_INDEX"_lit}, + {eGL_SAMPLE_ALPHA_TO_COVERAGE, "GL_SAMPLE_ALPHA_TO_COVERAGE"_lit}, + {eGL_SAMPLE_ALPHA_TO_ONE, "GL_SAMPLE_ALPHA_TO_ONE"_lit}, + {eGL_SAMPLE_COVERAGE, "GL_SAMPLE_COVERAGE"_lit}, + {eGL_SAMPLE_MASK, "GL_SAMPLE_MASK"_lit}, + {eGL_SAMPLE_SHADING, "GL_SAMPLE_SHADING"_lit}, + {eGL_RASTER_MULTISAMPLE_EXT, "GL_RASTER_MULTISAMPLE_EXT"_lit}, + {eGL_STENCIL_TEST, "GL_STENCIL_TEST"_lit}, + {eGL_TEXTURE_CUBE_MAP_SEAMLESS, "GL_TEXTURE_CUBE_MAP_SEAMLESS"_lit}, + {eGL_BLEND_ADVANCED_COHERENT_KHR, "GL_BLEND_ADVANCED_COHERENT_KHR"_lit}, + {eGL_RASTERIZER_DISCARD, "GL_RASTERIZER_DISCARD"_lit}, }; void ResetPixelPackState(bool compressed, GLint alignment) @@ -1919,167 +1919,170 @@ void DoSerialise(SerialiserType &ser, GLRenderState &el) for(int i = 0; i < GLRenderState::eEnabled_Count; i++) ser.Serialise(enable_disable_cap[i].name, el.Enabled[i]); - ser.Serialise("GL_TEXTURE_BINDING_1D", el.Tex1D); - ser.Serialise("GL_TEXTURE_BINDING_2D", el.Tex2D); - ser.Serialise("GL_TEXTURE_BINDING_3D", el.Tex3D); - ser.Serialise("GL_TEXTURE_BINDING_1D_ARRAY", el.Tex1DArray); - ser.Serialise("GL_TEXTURE_BINDING_2D_ARRAY", el.Tex2DArray); - ser.Serialise("GL_TEXTURE_BINDING_CUBE_MAP_ARRAY", el.TexCubeArray); - ser.Serialise("GL_TEXTURE_BINDING_RECTANGLE", el.TexRect); - ser.Serialise("GL_TEXTURE_BINDING_BUFFER", el.TexBuffer); - ser.Serialise("GL_TEXTURE_BINDING_CUBE_MAP", el.TexCube); - ser.Serialise("GL_TEXTURE_BINDING_2D_MULTISAMPLE", el.Tex2DMS); - ser.Serialise("GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY", el.Tex2DMSArray); + ser.Serialise("GL_TEXTURE_BINDING_1D"_lit, el.Tex1D); + ser.Serialise("GL_TEXTURE_BINDING_2D"_lit, el.Tex2D); + ser.Serialise("GL_TEXTURE_BINDING_3D"_lit, el.Tex3D); + ser.Serialise("GL_TEXTURE_BINDING_1D_ARRAY"_lit, el.Tex1DArray); + ser.Serialise("GL_TEXTURE_BINDING_2D_ARRAY"_lit, el.Tex2DArray); + ser.Serialise("GL_TEXTURE_BINDING_CUBE_MAP_ARRAY"_lit, el.TexCubeArray); + ser.Serialise("GL_TEXTURE_BINDING_RECTANGLE"_lit, el.TexRect); + ser.Serialise("GL_TEXTURE_BINDING_BUFFER"_lit, el.TexBuffer); + ser.Serialise("GL_TEXTURE_BINDING_CUBE_MAP"_lit, el.TexCube); + ser.Serialise("GL_TEXTURE_BINDING_2D_MULTISAMPLE"_lit, el.Tex2DMS); + ser.Serialise("GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY"_lit, el.Tex2DMSArray); - ser.Serialise("GL_SAMPLER_BINDING", el.Samplers); + ser.Serialise("GL_SAMPLER_BINDING"_lit, el.Samplers); - ser.Serialise("GL_ACTIVE_TEXTURE", el.ActiveTexture); + ser.Serialise("GL_ACTIVE_TEXTURE"_lit, el.ActiveTexture); - ser.Serialise("GL_IMAGE_BINDING", el.Images); + ser.Serialise("GL_IMAGE_BINDING"_lit, el.Images); - ser.Serialise("GL_CURRENT_PROGRAM", el.Program); - ser.Serialise("GL_PROGRAM_PIPELINE_BINDING", el.Pipeline); + ser.Serialise("GL_CURRENT_PROGRAM"_lit, el.Program); + ser.Serialise("GL_PROGRAM_PIPELINE_BINDING"_lit, el.Pipeline); - ser.Serialise("GL_SUBROUTINES", el.Subroutines); + ser.Serialise("GL_SUBROUTINES"_lit, el.Subroutines); - ser.Serialise("GL_VERTEX_ARRAY_BINDING", el.VAO); + ser.Serialise("GL_VERTEX_ARRAY_BINDING"_lit, el.VAO); - ser.Serialise("GL_TRANSFORM_FEEDBACK_BINDING", el.FeedbackObj); + ser.Serialise("GL_TRANSFORM_FEEDBACK_BINDING"_lit, el.FeedbackObj); - ser.Serialise("GL_CURRENT_VERTEX_ATTRIB", el.GenericVertexAttribs); + ser.Serialise("GL_CURRENT_VERTEX_ATTRIB"_lit, el.GenericVertexAttribs); - ser.Serialise("GL_POINT_FADE_THRESHOLD_SIZE", el.PointFadeThresholdSize); - ser.Serialise("GL_POINT_SPRITE_COORD_ORIGIN", el.PointSpriteOrigin); - ser.Serialise("GL_LINE_WIDTH", el.LineWidth); - ser.Serialise("GL_POINT_SIZE", el.PointSize); + ser.Serialise("GL_POINT_FADE_THRESHOLD_SIZE"_lit, el.PointFadeThresholdSize); + ser.Serialise("GL_POINT_SPRITE_COORD_ORIGIN"_lit, el.PointSpriteOrigin); + ser.Serialise("GL_LINE_WIDTH"_lit, el.LineWidth); + ser.Serialise("GL_POINT_SIZE"_lit, el.PointSize); - ser.Serialise("GL_PRIMITIVE_RESTART_INDEX", el.PrimitiveRestartIndex); + ser.Serialise("GL_PRIMITIVE_RESTART_INDEX"_lit, el.PrimitiveRestartIndex); { - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINX", el.PrimitiveBoundingBox.minX); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINY", el.PrimitiveBoundingBox.minY); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINZ", el.PrimitiveBoundingBox.minZ); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINW", el.PrimitiveBoundingBox.minW); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXX", el.PrimitiveBoundingBox.maxX); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXY", el.PrimitiveBoundingBox.maxY); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXZ", el.PrimitiveBoundingBox.maxZ); - ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXW", el.PrimitiveBoundingBox.maxW); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINX"_lit, el.PrimitiveBoundingBox.minX); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINY"_lit, el.PrimitiveBoundingBox.minY); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINZ"_lit, el.PrimitiveBoundingBox.minZ); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MINW"_lit, el.PrimitiveBoundingBox.minW); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXX"_lit, el.PrimitiveBoundingBox.maxX); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXY"_lit, el.PrimitiveBoundingBox.maxY); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXZ"_lit, el.PrimitiveBoundingBox.maxZ); + ser.Serialise("GL_PRIMITIVE_BOUNDING_BOX_MAXW"_lit, el.PrimitiveBoundingBox.maxW); } - ser.Serialise("GL_CLIP_ORIGIN", el.ClipOrigin); - ser.Serialise("GL_CLIP_DEPTH_MODE", el.ClipDepth); - ser.Serialise("GL_PROVOKING_VERTEX", el.ProvokingVertex); + ser.Serialise("GL_CLIP_ORIGIN"_lit, el.ClipOrigin); + ser.Serialise("GL_CLIP_DEPTH_MODE"_lit, el.ClipDepth); + ser.Serialise("GL_PROVOKING_VERTEX"_lit, el.ProvokingVertex); - ser.Serialise("GL_ARRAY_BUFFER_BINDING", el.BufferBindings[GLRenderState::eBufIdx_Array]); - ser.Serialise("GL_COPY_READ_BUFFER_BINDING", el.BufferBindings[GLRenderState::eBufIdx_Copy_Read]); - ser.Serialise("GL_COPY_WRITE_BUFFER_BINDING", el.BufferBindings[GLRenderState::eBufIdx_Copy_Write]); - ser.Serialise("GL_PIXEL_PACK_BUFFER_BINDING", el.BufferBindings[GLRenderState::eBufIdx_Pixel_Pack]); - ser.Serialise("GL_PIXEL_UNPACK_BUFFER_BINDING", + ser.Serialise("GL_ARRAY_BUFFER_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Array]); + ser.Serialise("GL_COPY_READ_BUFFER_BINDING"_lit, + el.BufferBindings[GLRenderState::eBufIdx_Copy_Read]); + ser.Serialise("GL_COPY_WRITE_BUFFER_BINDING"_lit, + el.BufferBindings[GLRenderState::eBufIdx_Copy_Write]); + ser.Serialise("GL_PIXEL_PACK_BUFFER_BINDING"_lit, + el.BufferBindings[GLRenderState::eBufIdx_Pixel_Pack]); + ser.Serialise("GL_PIXEL_UNPACK_BUFFER_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Pixel_Unpack]); - ser.Serialise("GL_TEXTURE_BUFFER_BINDING", el.BufferBindings[GLRenderState::eBufIdx_Texture]); - ser.Serialise("GL_DRAW_INDIRECT_BUFFER_BINDING", + ser.Serialise("GL_TEXTURE_BUFFER_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Texture]); + ser.Serialise("GL_DRAW_INDIRECT_BUFFER_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Draw_Indirect]); - ser.Serialise("GL_DISPATCH_INDIRECT_BUFFER_BINDING", + ser.Serialise("GL_DISPATCH_INDIRECT_BUFFER_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Dispatch_Indirect]); - ser.Serialise("GL_QUERY_BUFFER_BINDING", el.BufferBindings[GLRenderState::eBufIdx_Query]); - ser.Serialise("GL_PARAMETER_BUFFER_ARB_BINDING", + ser.Serialise("GL_QUERY_BUFFER_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Query]); + ser.Serialise("GL_PARAMETER_BUFFER_ARB_BINDING"_lit, el.BufferBindings[GLRenderState::eBufIdx_Parameter]); - ser.Serialise("GL_ATOMIC_COUNTER_BUFFER_BINDING", el.AtomicCounter); - ser.Serialise("GL_SHADER_STORAGE_BUFFER_BINDING", el.ShaderStorage); - ser.Serialise("GL_TRANSFORM_FEEDBACK_BUFFER_BINDING", el.TransformFeedback); - ser.Serialise("GL_UNIFORM_BUFFER_BINDING", el.UniformBinding); + ser.Serialise("GL_ATOMIC_COUNTER_BUFFER_BINDING"_lit, el.AtomicCounter); + ser.Serialise("GL_SHADER_STORAGE_BUFFER_BINDING"_lit, el.ShaderStorage); + ser.Serialise("GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"_lit, el.TransformFeedback); + ser.Serialise("GL_UNIFORM_BUFFER_BINDING"_lit, el.UniformBinding); - ser.Serialise("GL_BLENDS", el.Blends); - ser.Serialise("GL_BLEND_COLOR", el.BlendColor); + ser.Serialise("GL_BLENDS"_lit, el.Blends); + ser.Serialise("GL_BLEND_COLOR"_lit, el.BlendColor); - ser.Serialise("GL_VIEWPORT", el.Viewports); - ser.Serialise("GL_SCISSOR", el.Scissors); + ser.Serialise("GL_VIEWPORT"_lit, el.Viewports); + ser.Serialise("GL_SCISSOR"_lit, el.Scissors); - ser.Serialise("GL_DEPTH_RANGE", el.DepthRanges); + ser.Serialise("GL_DEPTH_RANGE"_lit, el.DepthRanges); - ser.Serialise("GL_READ_FRAMEBUFFER_BINDING", el.ReadFBO); - ser.Serialise("GL_DRAW_FRAMEBUFFER_BINDING", el.DrawFBO); + ser.Serialise("GL_READ_FRAMEBUFFER_BINDING"_lit, el.ReadFBO); + ser.Serialise("GL_DRAW_FRAMEBUFFER_BINDING"_lit, el.DrawFBO); - ser.Serialise("GL_READ_BUFFER", el.ReadBuffer); - ser.Serialise("GL_DRAW_BUFFERS", el.DrawBuffers); + ser.Serialise("GL_READ_BUFFER"_lit, el.ReadBuffer); + ser.Serialise("GL_DRAW_BUFFERS"_lit, el.DrawBuffers); { - ser.Serialise("GL_PATCH_VERTICES", el.PatchParams.numVerts); - ser.Serialise("GL_PATCH_DEFAULT_INNER_LEVEL", el.PatchParams.defaultInnerLevel); - ser.Serialise("GL_PATCH_DEFAULT_OUTER_LEVEL", el.PatchParams.defaultOuterLevel); + ser.Serialise("GL_PATCH_VERTICES"_lit, el.PatchParams.numVerts); + ser.Serialise("GL_PATCH_DEFAULT_INNER_LEVEL"_lit, el.PatchParams.defaultInnerLevel); + ser.Serialise("GL_PATCH_DEFAULT_OUTER_LEVEL"_lit, el.PatchParams.defaultOuterLevel); } - ser.Serialise("GL_POLYGON_MODE", el.PolygonMode); - ser.Serialise("GL_POLYGON_OFFSET_FACTOR", el.PolygonOffset[0]); - ser.Serialise("GL_POLYGON_OFFSET_UNITS", el.PolygonOffset[1]); - ser.Serialise("GL_POLYGON_OFFSET_CLAMP_EXT", el.PolygonOffset[2]); + ser.Serialise("GL_POLYGON_MODE"_lit, el.PolygonMode); + ser.Serialise("GL_POLYGON_OFFSET_FACTOR"_lit, el.PolygonOffset[0]); + ser.Serialise("GL_POLYGON_OFFSET_UNITS"_lit, el.PolygonOffset[1]); + ser.Serialise("GL_POLYGON_OFFSET_CLAMP_EXT"_lit, el.PolygonOffset[2]); - ser.Serialise("GL_DEPTH_WRITEMASK", el.DepthWriteMask); - ser.Serialise("GL_DEPTH_CLEAR_VALUE", el.DepthClearValue); - ser.Serialise("GL_DEPTH_FUNC", el.DepthFunc); + ser.Serialise("GL_DEPTH_WRITEMASK"_lit, el.DepthWriteMask); + ser.Serialise("GL_DEPTH_CLEAR_VALUE"_lit, el.DepthClearValue); + ser.Serialise("GL_DEPTH_FUNC"_lit, el.DepthFunc); - ser.Serialise("GL_DEPTH_BOUNDS_EXT", el.DepthBounds); + ser.Serialise("GL_DEPTH_BOUNDS_EXT"_lit, el.DepthBounds); { - ser.Serialise("GL_STENCIL_FUNC", el.StencilFront.func); - ser.Serialise("GL_STENCIL_BACK_FUNC", el.StencilBack.func); + ser.Serialise("GL_STENCIL_FUNC"_lit, el.StencilFront.func); + ser.Serialise("GL_STENCIL_BACK_FUNC"_lit, el.StencilBack.func); - ser.Serialise("GL_STENCIL_REF", el.StencilFront.ref); - ser.Serialise("GL_STENCIL_BACK_REF", el.StencilBack.ref); + ser.Serialise("GL_STENCIL_REF"_lit, el.StencilFront.ref); + ser.Serialise("GL_STENCIL_BACK_REF"_lit, el.StencilBack.ref); - ser.Serialise("GL_STENCIL_VALUE_MASK", el.StencilFront.valuemask); - ser.Serialise("GL_STENCIL_BACK_VALUE_MASK", el.StencilBack.valuemask); + ser.Serialise("GL_STENCIL_VALUE_MASK"_lit, el.StencilFront.valuemask); + ser.Serialise("GL_STENCIL_BACK_VALUE_MASK"_lit, el.StencilBack.valuemask); - ser.Serialise("GL_STENCIL_WRITEMASK", el.StencilFront.writemask); - ser.Serialise("GL_STENCIL_BACK_WRITEMASK", el.StencilBack.writemask); + ser.Serialise("GL_STENCIL_WRITEMASK"_lit, el.StencilFront.writemask); + ser.Serialise("GL_STENCIL_BACK_WRITEMASK"_lit, el.StencilBack.writemask); - ser.Serialise("GL_STENCIL_FAIL", el.StencilFront.stencilFail); - ser.Serialise("GL_STENCIL_BACK_FAIL", el.StencilBack.stencilFail); + ser.Serialise("GL_STENCIL_FAIL"_lit, el.StencilFront.stencilFail); + ser.Serialise("GL_STENCIL_BACK_FAIL"_lit, el.StencilBack.stencilFail); - ser.Serialise("GL_STENCIL_PASS_DEPTH_FAIL", el.StencilFront.depthFail); - ser.Serialise("GL_STENCIL_BACK_PASS_DEPTH_FAIL", el.StencilBack.depthFail); + ser.Serialise("GL_STENCIL_PASS_DEPTH_FAIL"_lit, el.StencilFront.depthFail); + ser.Serialise("GL_STENCIL_BACK_PASS_DEPTH_FAIL"_lit, el.StencilBack.depthFail); - ser.Serialise("GL_STENCIL_PASS_DEPTH_PASS", el.StencilFront.pass); - ser.Serialise("GL_STENCIL_BACK_PASS_DEPTH_PASS", el.StencilBack.pass); + ser.Serialise("GL_STENCIL_PASS_DEPTH_PASS"_lit, el.StencilFront.pass); + ser.Serialise("GL_STENCIL_BACK_PASS_DEPTH_PASS"_lit, el.StencilBack.pass); } - ser.Serialise("GL_STENCIL_CLEAR_VALUE", el.StencilClearValue); + ser.Serialise("GL_STENCIL_CLEAR_VALUE"_lit, el.StencilClearValue); - ser.Serialise("GL_COLOR_WRITEMASK", el.ColorMasks); + ser.Serialise("GL_COLOR_WRITEMASK"_lit, el.ColorMasks); - ser.Serialise("GL_RASTER_SAMPLES_EXT", el.RasterSamples); - ser.Serialise("GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT", el.RasterFixed); + ser.Serialise("GL_RASTER_SAMPLES_EXT"_lit, el.RasterSamples); + ser.Serialise("GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT"_lit, el.RasterFixed); - ser.Serialise("GL_SAMPLE_MASK_VALUE", el.SampleMask); - ser.Serialise("GL_SAMPLE_COVERAGE_VALUE", el.SampleCoverage); - ser.Serialise("GL_SAMPLE_COVERAGE_INVERT", el.SampleCoverageInvert); - ser.Serialise("GL_MIN_SAMPLE_SHADING", el.MinSampleShading); + ser.Serialise("GL_SAMPLE_MASK_VALUE"_lit, el.SampleMask); + ser.Serialise("GL_SAMPLE_COVERAGE_VALUE"_lit, el.SampleCoverage); + ser.Serialise("GL_SAMPLE_COVERAGE_INVERT"_lit, el.SampleCoverageInvert); + ser.Serialise("GL_MIN_SAMPLE_SHADING"_lit, el.MinSampleShading); - ser.Serialise("GL_LOGIC_OP_MODE", el.LogicOp); + ser.Serialise("GL_LOGIC_OP_MODE"_lit, el.LogicOp); - ser.Serialise("GL_COLOR_CLEAR_VALUE", el.ColorClearValue); + ser.Serialise("GL_COLOR_CLEAR_VALUE"_lit, el.ColorClearValue); - ser.Serialise("GL_FRAGMENT_SHADER_DERIVATIVE_HINT", el.Hints.Derivatives); - ser.Serialise("GL_LINE_SMOOTH_HINT", el.Hints.LineSmooth); - ser.Serialise("GL_POLYGON_SMOOTH_HINT", el.Hints.PolySmooth); - ser.Serialise("GL_TEXTURE_COMPRESSION_HINT", el.Hints.TexCompression); + ser.Serialise("GL_FRAGMENT_SHADER_DERIVATIVE_HINT"_lit, el.Hints.Derivatives); + ser.Serialise("GL_LINE_SMOOTH_HINT"_lit, el.Hints.LineSmooth); + ser.Serialise("GL_POLYGON_SMOOTH_HINT"_lit, el.Hints.PolySmooth); + ser.Serialise("GL_TEXTURE_COMPRESSION_HINT"_lit, el.Hints.TexCompression); - ser.Serialise("GL_FRONT_FACE", el.FrontFace); - ser.Serialise("GL_CULL_FACE_MODE", el.CullFace); + ser.Serialise("GL_FRONT_FACE"_lit, el.FrontFace); + ser.Serialise("GL_CULL_FACE_MODE"_lit, el.CullFace); - ser.Serialise("GL_UNPACK_SWAP_BYTES", el.Unpack.swapBytes); + ser.Serialise("GL_UNPACK_SWAP_BYTES"_lit, el.Unpack.swapBytes); // TODO serialise GL_UNPACK_LSB_FIRST? - ser.Serialise("GL_UNPACK_ROW_LENGTH", el.Unpack.rowlength); - ser.Serialise("GL_UNPACK_IMAGE_HEIGHT", el.Unpack.imageheight); - ser.Serialise("GL_UNPACK_SKIP_PIXELS", el.Unpack.skipPixels); - ser.Serialise("GL_UNPACK_SKIP_ROWS", el.Unpack.skipRows); - ser.Serialise("GL_UNPACK_SKIP_IMAGES", el.Unpack.skipImages); - ser.Serialise("GL_UNPACK_ALIGNMENT", el.Unpack.alignment); - ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_WIDTH", el.Unpack.compressedBlockWidth); - ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_HEIGHT", el.Unpack.compressedBlockHeight); - ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_DEPTH", el.Unpack.compressedBlockDepth); - ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_SIZE", el.Unpack.compressedBlockSize); + ser.Serialise("GL_UNPACK_ROW_LENGTH"_lit, el.Unpack.rowlength); + ser.Serialise("GL_UNPACK_IMAGE_HEIGHT"_lit, el.Unpack.imageheight); + ser.Serialise("GL_UNPACK_SKIP_PIXELS"_lit, el.Unpack.skipPixels); + ser.Serialise("GL_UNPACK_SKIP_ROWS"_lit, el.Unpack.skipRows); + ser.Serialise("GL_UNPACK_SKIP_IMAGES"_lit, el.Unpack.skipImages); + ser.Serialise("GL_UNPACK_ALIGNMENT"_lit, el.Unpack.alignment); + ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_WIDTH"_lit, el.Unpack.compressedBlockWidth); + ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_HEIGHT"_lit, el.Unpack.compressedBlockHeight); + ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_DEPTH"_lit, el.Unpack.compressedBlockDepth); + ser.Serialise("GL_UNPACK_COMPRESSED_BLOCK_SIZE"_lit, el.Unpack.compressedBlockSize); } INSTANTIATE_SERIALISE_TYPE(GLRenderState); diff --git a/renderdoc/driver/gl/gl_resources.cpp b/renderdoc/driver/gl/gl_resources.cpp index 35830bf05..4036cf19c 100644 --- a/renderdoc/driver/gl/gl_resources.cpp +++ b/renderdoc/driver/gl/gl_resources.cpp @@ -28,7 +28,7 @@ #include "gl_manager.h" template <> -std::string DoStringise(const GLNamespace &el) +rdcstr DoStringise(const GLNamespace &el) { BEGIN_ENUM_STRINGISE(GLNamespace) { diff --git a/renderdoc/driver/gl/gl_shader_refl.cpp b/renderdoc/driver/gl/gl_shader_refl.cpp index bdee46d3b..af94314ee 100644 --- a/renderdoc/driver/gl/gl_shader_refl.cpp +++ b/renderdoc/driver/gl/gl_shader_refl.cpp @@ -29,7 +29,7 @@ #include "gl_driver.h" template <> -std::string DoStringise(const FFVertexOutput &el) +rdcstr DoStringise(const FFVertexOutput &el) { BEGIN_ENUM_STRINGISE(FFVertexOutput); { diff --git a/renderdoc/driver/gl/gl_stringise.cpp b/renderdoc/driver/gl/gl_stringise.cpp index 27a8c545c..6ff82fe48 100644 --- a/renderdoc/driver/gl/gl_stringise.cpp +++ b/renderdoc/driver/gl/gl_stringise.cpp @@ -27,7 +27,7 @@ #include "gl_driver.h" template <> -std::string DoStringise(const GLChunk &el) +rdcstr DoStringise(const GLChunk &el) { BEGIN_ENUM_STRINGISE(GLChunk) { @@ -55,7 +55,7 @@ std::string DoStringise(const GLChunk &el) } template <> -std::string DoStringise(const AttribType &el) +rdcstr DoStringise(const AttribType &el) { std::string suffix; @@ -84,7 +84,7 @@ std::string DoStringise(const AttribType &el) } template <> -std::string DoStringise(const UniformType &el) +rdcstr DoStringise(const UniformType &el) { switch(el) { @@ -142,7 +142,7 @@ std::string DoStringise(const UniformType &el) } template <> -std::string DoStringise(const RDCGLenum &el) +rdcstr DoStringise(const RDCGLenum &el) { #undef GLenum diff --git a/renderdoc/driver/gl/wrappers/gl_buffer_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_buffer_funcs.cpp index e1c2aa6dd..8e533176a 100644 --- a/renderdoc/driver/gl/wrappers/gl_buffer_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_buffer_funcs.cpp @@ -35,7 +35,7 @@ enum GLbufferbitfield DECLARE_REFLECTION_ENUM(GLbufferbitfield); template <> -std::string DoStringise(const GLbufferbitfield &el) +rdcstr DoStringise(const GLbufferbitfield &el) { RDCCOMPILE_ASSERT(sizeof(GLbufferbitfield) == sizeof(GLbitfield) && sizeof(GLbufferbitfield) == sizeof(uint32_t), @@ -64,7 +64,7 @@ bool WrappedOpenGL::Serialise_glGenBuffers(SerialiserType &ser, GLsizei n, GLuin { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(buffer, GetResourceManager()->GetID(BufferRes(GetCtx(), *buffers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -129,7 +129,7 @@ bool WrappedOpenGL::Serialise_glCreateBuffers(SerialiserType &ser, GLsizei n, GL { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(buffer, GetResourceManager()->GetID(BufferRes(GetCtx(), *buffers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2701,7 +2701,7 @@ bool WrappedOpenGL::Serialise_glGenTransformFeedbacks(SerialiserType &ser, GLsiz { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(feedback, GetResourceManager()->GetID(FeedbackRes(GetCtx(), *ids))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2761,7 +2761,7 @@ bool WrappedOpenGL::Serialise_glCreateTransformFeedbacks(SerialiserType &ser, GL { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(feedback, GetResourceManager()->GetID(FeedbackRes(GetCtx(), *ids))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -4120,7 +4120,7 @@ bool WrappedOpenGL::Serialise_glGenVertexArrays(SerialiserType &ser, GLsizei n, { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(array, GetResourceManager()->GetID(VertexArrayRes(GetCtx(), *arrays))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -4180,7 +4180,7 @@ bool WrappedOpenGL::Serialise_glCreateVertexArrays(SerialiserType &ser, GLsizei { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(array, GetResourceManager()->GetID(VertexArrayRes(GetCtx(), *arrays))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -4816,16 +4816,16 @@ bool WrappedOpenGL::Serialise_glVertexAttrib(SerialiserType &ser, GLuint index, // Serialise the array with the right type. We don't want to allocate new storage switch(attr) { - case Attrib_GLdouble: ser.Serialise("values", v.d, SerialiserFlags::NoFlags); break; - case Attrib_GLfloat: ser.Serialise("values", v.f, SerialiserFlags::NoFlags); break; - case Attrib_GLint: ser.Serialise("values", v.i32, SerialiserFlags::NoFlags); break; + case Attrib_GLdouble: ser.Serialise("values"_lit, v.d, SerialiserFlags::NoFlags); break; + case Attrib_GLfloat: ser.Serialise("values"_lit, v.f, SerialiserFlags::NoFlags); break; + case Attrib_GLint: ser.Serialise("values"_lit, v.i32, SerialiserFlags::NoFlags); break; case Attrib_packed: - case Attrib_GLuint: ser.Serialise("values", v.u32, SerialiserFlags::NoFlags); break; - case Attrib_GLshort: ser.Serialise("values", v.i16, SerialiserFlags::NoFlags); break; - case Attrib_GLushort: ser.Serialise("values", v.u16, SerialiserFlags::NoFlags); break; - case Attrib_GLbyte: ser.Serialise("values", v.i8, SerialiserFlags::NoFlags); break; + case Attrib_GLuint: ser.Serialise("values"_lit, v.u32, SerialiserFlags::NoFlags); break; + case Attrib_GLshort: ser.Serialise("values"_lit, v.i16, SerialiserFlags::NoFlags); break; + case Attrib_GLushort: ser.Serialise("values"_lit, v.u16, SerialiserFlags::NoFlags); break; + case Attrib_GLbyte: ser.Serialise("values"_lit, v.i8, SerialiserFlags::NoFlags); break; default: - case Attrib_GLubyte: ser.Serialise("values", v.u8, SerialiserFlags::NoFlags); break; + case Attrib_GLubyte: ser.Serialise("values"_lit, v.u8, SerialiserFlags::NoFlags); break; } SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/wrappers/gl_draw_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_draw_funcs.cpp index 2cd4aaeaf..e9ccd0ae2 100644 --- a/renderdoc/driver/gl/wrappers/gl_draw_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_draw_funcs.cpp @@ -47,7 +47,7 @@ enum GLbarrierbitfield DECLARE_REFLECTION_ENUM(GLbarrierbitfield); template <> -std::string DoStringise(const GLbarrierbitfield &el) +rdcstr DoStringise(const GLbarrierbitfield &el) { RDCCOMPILE_ASSERT(sizeof(GLbarrierbitfield) == sizeof(GLbitfield) && sizeof(GLbarrierbitfield) == sizeof(uint32_t), @@ -75,7 +75,7 @@ std::string DoStringise(const GLbarrierbitfield &el) } template <> -std::string DoStringise(const GLframebufferbitfield &el) +rdcstr DoStringise(const GLframebufferbitfield &el) { RDCCOMPILE_ASSERT(sizeof(GLframebufferbitfield) == sizeof(GLbitfield) && sizeof(GLframebufferbitfield) == sizeof(uint32_t), @@ -2602,9 +2602,9 @@ bool WrappedOpenGL::Serialise_glMultiDrawArraysIndirect(SerialiserType &ser, GLe { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", i); - structuriser.Serialise("offset", offs); - structuriser.Serialise("command", params); + structuriser.Serialise("drawIndex"_lit, i); + structuriser.Serialise("offset"_lit, offs); + structuriser.Serialise("command"_lit, params); } m_StructuredFile->chunks.push_back(fakeChunk); @@ -2825,9 +2825,9 @@ bool WrappedOpenGL::Serialise_glMultiDrawElementsIndirect(SerialiserType &ser, G { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", i); - structuriser.Serialise("offset", offs); - structuriser.Serialise("command", params); + structuriser.Serialise("drawIndex"_lit, i); + structuriser.Serialise("offset"_lit, offs); + structuriser.Serialise("command"_lit, params); } m_StructuredFile->chunks.push_back(fakeChunk); @@ -3048,9 +3048,9 @@ bool WrappedOpenGL::Serialise_glMultiDrawArraysIndirectCount(SerialiserType &ser { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", i); - structuriser.Serialise("offset", offs); - structuriser.Serialise("command", params); + structuriser.Serialise("drawIndex"_lit, i); + structuriser.Serialise("offset"_lit, offs); + structuriser.Serialise("command"_lit, params); } m_StructuredFile->chunks.push_back(fakeChunk); @@ -3280,9 +3280,9 @@ bool WrappedOpenGL::Serialise_glMultiDrawElementsIndirectCount(SerialiserType &s { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", i); - structuriser.Serialise("offset", offs); - structuriser.Serialise("command", params); + structuriser.Serialise("drawIndex"_lit, i); + structuriser.Serialise("offset"_lit, offs); + structuriser.Serialise("command"_lit, params); } m_StructuredFile->chunks.push_back(fakeChunk); diff --git a/renderdoc/driver/gl/wrappers/gl_framebuffer_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_framebuffer_funcs.cpp index e33fb1203..5de9313d6 100644 --- a/renderdoc/driver/gl/wrappers/gl_framebuffer_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_framebuffer_funcs.cpp @@ -33,7 +33,7 @@ bool WrappedOpenGL::Serialise_glGenFramebuffers(SerialiserType &ser, GLsizei n, SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(framebuffer, GetResourceManager()->GetID(FramebufferRes(GetCtx(), *framebuffers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -95,7 +95,7 @@ bool WrappedOpenGL::Serialise_glCreateFramebuffers(SerialiserType &ser, GLsizei SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(framebuffer, GetResourceManager()->GetID(FramebufferRes(GetCtx(), *framebuffers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1994,7 +1994,7 @@ bool WrappedOpenGL::Serialise_glGenRenderbuffers(SerialiserType &ser, GLsizei n, SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(renderbuffer, GetResourceManager()->GetID(RenderbufferRes(GetCtx(), *renderbuffers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -2058,7 +2058,7 @@ bool WrappedOpenGL::Serialise_glCreateRenderbuffers(SerialiserType &ser, GLsizei SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(renderbuffer, GetResourceManager()->GetID(RenderbufferRes(GetCtx(), *renderbuffers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/wrappers/gl_interop_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_interop_funcs.cpp index 41c134081..d414a90d8 100644 --- a/renderdoc/driver/gl/wrappers/gl_interop_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_interop_funcs.cpp @@ -493,7 +493,7 @@ bool WrappedOpenGL::Serialise_wglDXLockObjectsNV(SerialiserType &ser, GLResource } // serialise without allocating memory as we already have our scratch buf sized. - ser.Serialise("SubresourceContents", scratchBuf, size, SerialiserFlags::NoFlags); + ser.Serialise("SubresourceContents"_lit, scratchBuf, size, SerialiserFlags::NoFlags); if(IsReplayingAndReading() && !ser.IsErrored()) { @@ -535,7 +535,7 @@ bool WrappedOpenGL::Serialise_glCreateMemoryObjectsEXT(SerialiserType &ser, GLsi { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(memory, GetResourceManager()->GetID(ExtMemRes(GetCtx(), *memoryObjects))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -810,7 +810,7 @@ bool WrappedOpenGL::Serialise_glGenSemaphoresEXT(SerialiserType &ser, GLsizei n, { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(semaphore, GetResourceManager()->GetID(ExtSemRes(GetCtx(), *semaphores))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp index 4f9a33c99..e28715bf2 100644 --- a/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp @@ -34,7 +34,7 @@ enum GLsyncbitfield DECLARE_REFLECTION_ENUM(GLsyncbitfield); template <> -std::string DoStringise(const GLsyncbitfield &el) +rdcstr DoStringise(const GLsyncbitfield &el) { RDCCOMPILE_ASSERT( sizeof(GLsyncbitfield) == sizeof(GLbitfield) && sizeof(GLsyncbitfield) == sizeof(uint32_t), @@ -51,7 +51,7 @@ template bool WrappedOpenGL::Serialise_glFenceSync(SerialiserType &ser, GLsync real, GLenum condition, GLbitfield flags) { - SERIALISE_ELEMENT_LOCAL(sync, GetResourceManager()->GetSyncID(real)).TypedAs("GLsync"); + SERIALISE_ELEMENT_LOCAL(sync, GetResourceManager()->GetSyncID(real)).TypedAs("GLsync"_lit); SERIALISE_ELEMENT(condition); SERIALISE_ELEMENT_TYPED(GLsyncbitfield, flags); @@ -124,7 +124,7 @@ template bool WrappedOpenGL::Serialise_glClientWaitSync(SerialiserType &ser, GLsync sync_, GLbitfield flags, GLuint64 timeout) { - SERIALISE_ELEMENT_LOCAL(sync, GetResourceManager()->GetSyncID(sync_)).TypedAs("GLsync"); + SERIALISE_ELEMENT_LOCAL(sync, GetResourceManager()->GetSyncID(sync_)).TypedAs("GLsync"_lit); SERIALISE_ELEMENT_TYPED(GLsyncbitfield, flags); SERIALISE_ELEMENT(timeout); @@ -160,7 +160,7 @@ template bool WrappedOpenGL::Serialise_glWaitSync(SerialiserType &ser, GLsync sync_, GLbitfield flags, GLuint64 timeout) { - SERIALISE_ELEMENT_LOCAL(sync, GetResourceManager()->GetSyncID(sync_)).TypedAs("GLsync"); + SERIALISE_ELEMENT_LOCAL(sync, GetResourceManager()->GetSyncID(sync_)).TypedAs("GLsync"_lit); SERIALISE_ELEMENT_TYPED(GLsyncbitfield, flags); SERIALISE_ELEMENT(timeout); @@ -204,7 +204,7 @@ bool WrappedOpenGL::Serialise_glGenQueries(SerialiserType &ser, GLsizei n, GLuin { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(query, GetResourceManager()->GetID(QueryRes(GetCtx(), *ids))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -264,7 +264,7 @@ bool WrappedOpenGL::Serialise_glCreateQueries(SerialiserType &ser, GLenum target SERIALISE_ELEMENT(target); SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(query, GetResourceManager()->GetID(QueryRes(GetCtx(), *ids))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/wrappers/gl_sampler_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_sampler_funcs.cpp index f2248842e..d7bae29d1 100644 --- a/renderdoc/driver/gl/wrappers/gl_sampler_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_sampler_funcs.cpp @@ -37,7 +37,7 @@ bool WrappedOpenGL::Serialise_glGenSamplers(SerialiserType &ser, GLsizei n, GLui { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(sampler, GetResourceManager()->GetID(SamplerRes(GetCtx(), *samplers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -97,7 +97,7 @@ bool WrappedOpenGL::Serialise_glCreateSamplers(SerialiserType &ser, GLsizei n, G { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(sampler, GetResourceManager()->GetID(SamplerRes(GetCtx(), *samplers))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/wrappers/gl_shader_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_shader_funcs.cpp index da86c0e65..4b12476b8 100644 --- a/renderdoc/driver/gl/wrappers/gl_shader_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_shader_funcs.cpp @@ -36,7 +36,7 @@ enum GLshaderbitfield DECLARE_REFLECTION_ENUM(GLshaderbitfield); template <> -std::string DoStringise(const GLshaderbitfield &el) +rdcstr DoStringise(const GLshaderbitfield &el) { RDCCOMPILE_ASSERT(sizeof(GLshaderbitfield) == sizeof(GLbitfield) && sizeof(GLshaderbitfield) == sizeof(uint32_t), @@ -300,7 +300,7 @@ bool WrappedOpenGL::Serialise_glCreateShader(SerialiserType &ser, GLenum type, G { SERIALISE_ELEMENT(type); SERIALISE_ELEMENT_LOCAL(Shader, GetResourceManager()->GetID(ShaderRes(GetCtx(), shader))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -673,7 +673,7 @@ bool WrappedOpenGL::Serialise_glCreateShaderProgramv(SerialiserType &ser, GLenum SERIALISE_ELEMENT(count); SERIALISE_ELEMENT_ARRAY(strings, count); SERIALISE_ELEMENT_LOCAL(Program, GetResourceManager()->GetID(ProgramRes(GetCtx(), program))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -755,7 +755,7 @@ template bool WrappedOpenGL::Serialise_glCreateProgram(SerialiserType &ser, GLuint program) { SERIALISE_ELEMENT_LOCAL(Program, GetResourceManager()->GetID(ProgramRes(GetCtx(), program))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1554,7 +1554,7 @@ bool WrappedOpenGL::Serialise_glGenProgramPipelines(SerialiserType &ser, GLsizei { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(pipeline, GetResourceManager()->GetID(ProgramPipeRes(GetCtx(), *pipelines))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1615,7 +1615,7 @@ bool WrappedOpenGL::Serialise_glCreateProgramPipelines(SerialiserType &ser, GLsi { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(pipeline, GetResourceManager()->GetID(ProgramPipeRes(GetCtx(), *pipelines))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp index 9c75ad1cc..fd06dfb7d 100644 --- a/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp @@ -90,7 +90,7 @@ bool WrappedOpenGL::Serialise_glGenTextures(SerialiserType &ser, GLsizei n, GLui { SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(texture, GetResourceManager()->GetID(TextureRes(GetCtx(), *textures))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -155,7 +155,7 @@ bool WrappedOpenGL::Serialise_glCreateTextures(SerialiserType &ser, GLenum targe SERIALISE_ELEMENT(target); SERIALISE_ELEMENT(n); SERIALISE_ELEMENT_LOCAL(texture, GetResourceManager()->GetID(TextureRes(GetCtx(), *textures))) - .TypedAs("GLResource"); + .TypedAs("GLResource"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -4702,7 +4702,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage1DEXT(SerialiserType &ser, GLuint // in. if(!UnpackBufBound) { - ser.Serialise("pixels", pixels, subimageSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory); } else { @@ -4914,7 +4914,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage2DEXT(SerialiserType &ser, GLuint // in. if(!UnpackBufBound) { - ser.Serialise("pixels", pixels, subimageSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory); } else { @@ -5134,7 +5134,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage3DEXT(SerialiserType &ser, GLuint // in. if(!UnpackBufBound) { - ser.Serialise("pixels", pixels, subimageSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory); } else { @@ -5353,7 +5353,7 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage1DEXT(SerialiserType &s // in. if(!UnpackBufBound) { - ser.Serialise("pixels", pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory); } else { @@ -5554,7 +5554,7 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage2DEXT(SerialiserType &s // in. if(!UnpackBufBound) { - ser.Serialise("pixels", pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory); } else { @@ -5773,7 +5773,7 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage3DEXT( // in. if(!UnpackBufBound) { - ser.Serialise("pixels", pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory); } else { diff --git a/renderdoc/driver/gl/wrappers/gl_uniform_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_uniform_funcs.cpp index 27d184e10..47171cccc 100644 --- a/renderdoc/driver/gl/wrappers/gl_uniform_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_uniform_funcs.cpp @@ -102,13 +102,13 @@ bool WrappedOpenGL::Serialise_glProgramUniformVector(SerialiserType &ser, GLuint // we don't want to allocate since we've already handled that if(elemBaseType == SDBasic::Float && elemSize == sizeof(float)) - ser.Serialise("values", v.f, arrayLength, SerialiserFlags::NoFlags); + ser.Serialise("values"_lit, v.f, arrayLength, SerialiserFlags::NoFlags); else if(elemBaseType == SDBasic::Float) - ser.Serialise("values", v.d, arrayLength, SerialiserFlags::NoFlags); + ser.Serialise("values"_lit, v.d, arrayLength, SerialiserFlags::NoFlags); else if(elemBaseType == SDBasic::SignedInteger) - ser.Serialise("values", v.i, arrayLength, SerialiserFlags::NoFlags); + ser.Serialise("values"_lit, v.i, arrayLength, SerialiserFlags::NoFlags); else if(elemBaseType == SDBasic::UnsignedInteger) - ser.Serialise("values", v.u, arrayLength, SerialiserFlags::NoFlags); + ser.Serialise("values"_lit, v.u, arrayLength, SerialiserFlags::NoFlags); SERIALISE_CHECK_READ_ERRORS(); @@ -227,9 +227,9 @@ bool WrappedOpenGL::Serialise_glProgramUniformMatrix(SerialiserType &ser, GLuint // we don't want to allocate since we've already handled that if(elemSize == sizeof(float)) - ser.Serialise("values", v.f, arrayLength, SerialiserFlags::NoFlags); + ser.Serialise("values"_lit, v.f, arrayLength, SerialiserFlags::NoFlags); else - ser.Serialise("values", v.d, arrayLength, SerialiserFlags::NoFlags); + ser.Serialise("values"_lit, v.d, arrayLength, SerialiserFlags::NoFlags); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/shaders/spirv/spirv_editor.cpp b/renderdoc/driver/shaders/spirv/spirv_editor.cpp index d47d201a4..1c1474342 100644 --- a/renderdoc/driver/shaders/spirv/spirv_editor.cpp +++ b/renderdoc/driver/shaders/spirv/spirv_editor.cpp @@ -419,7 +419,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { static const uint32_t FirstRealWord = 5; template <> -std::string DoStringise(const SPIRVId &el) +rdcstr DoStringise(const SPIRVId &el) { return StringFormat::Fmt("%u", el.id); } diff --git a/renderdoc/driver/shaders/spirv/spirv_stringise.cpp b/renderdoc/driver/shaders/spirv/spirv_stringise.cpp index 220844aef..4feca759a 100644 --- a/renderdoc/driver/shaders/spirv/spirv_stringise.cpp +++ b/renderdoc/driver/shaders/spirv/spirv_stringise.cpp @@ -27,7 +27,7 @@ #include "common/common.h" template <> -std::string DoStringise(const spv::Op &el) +rdcstr DoStringise(const spv::Op &el) { BEGIN_ENUM_STRINGISE(spv::Op) { @@ -421,7 +421,7 @@ std::string DoStringise(const spv::Op &el) } template <> -std::string DoStringise(const spv::SourceLanguage &el) +rdcstr DoStringise(const spv::SourceLanguage &el) { BEGIN_ENUM_STRINGISE(spv::SourceLanguage) { @@ -437,7 +437,7 @@ std::string DoStringise(const spv::SourceLanguage &el) } template <> -std::string DoStringise(const spv::Capability &el) +rdcstr DoStringise(const spv::Capability &el) { BEGIN_ENUM_STRINGISE(spv::Capability) { @@ -598,7 +598,7 @@ std::string DoStringise(const spv::Capability &el) } template <> -std::string DoStringise(const spv::ExecutionMode &el) +rdcstr DoStringise(const spv::ExecutionMode &el) { BEGIN_ENUM_STRINGISE(spv::ExecutionMode) { @@ -658,7 +658,7 @@ std::string DoStringise(const spv::ExecutionMode &el) } template <> -std::string DoStringise(const spv::AddressingModel &el) +rdcstr DoStringise(const spv::AddressingModel &el) { BEGIN_ENUM_STRINGISE(spv::AddressingModel) { @@ -673,7 +673,7 @@ std::string DoStringise(const spv::AddressingModel &el) } template <> -std::string DoStringise(const spv::MemoryModel &el) +rdcstr DoStringise(const spv::MemoryModel &el) { BEGIN_ENUM_STRINGISE(spv::MemoryModel) { @@ -687,7 +687,7 @@ std::string DoStringise(const spv::MemoryModel &el) } template <> -std::string DoStringise(const spv::ExecutionModel &el) +rdcstr DoStringise(const spv::ExecutionModel &el) { BEGIN_ENUM_STRINGISE(spv::ExecutionModel) { @@ -712,7 +712,7 @@ std::string DoStringise(const spv::ExecutionModel &el) } template <> -std::string DoStringise(const spv::Decoration &el) +rdcstr DoStringise(const spv::Decoration &el) { BEGIN_ENUM_STRINGISE(spv::Decoration) { @@ -784,7 +784,7 @@ std::string DoStringise(const spv::Decoration &el) } template <> -std::string DoStringise(const spv::Dim &el) +rdcstr DoStringise(const spv::Dim &el) { BEGIN_ENUM_STRINGISE(spv::Dim) { @@ -801,7 +801,7 @@ std::string DoStringise(const spv::Dim &el) } template <> -std::string DoStringise(const spv::StorageClass &el) +rdcstr DoStringise(const spv::StorageClass &el) { BEGIN_ENUM_STRINGISE(spv::StorageClass) { @@ -831,7 +831,7 @@ std::string DoStringise(const spv::StorageClass &el) } template <> -std::string DoStringise(const spv::ImageFormat &el) +rdcstr DoStringise(const spv::ImageFormat &el) { BEGIN_ENUM_STRINGISE(spv::ImageFormat) { @@ -881,7 +881,7 @@ std::string DoStringise(const spv::ImageFormat &el) } template <> -std::string DoStringise(const spv::BuiltIn &el) +rdcstr DoStringise(const spv::BuiltIn &el) { BEGIN_ENUM_STRINGISE(spv::BuiltIn) { @@ -982,7 +982,7 @@ std::string DoStringise(const spv::BuiltIn &el) } template <> -std::string DoStringise(const spv::Scope &el) +rdcstr DoStringise(const spv::Scope &el) { BEGIN_ENUM_STRINGISE(spv::Scope) { @@ -998,7 +998,7 @@ std::string DoStringise(const spv::Scope &el) } template <> -std::string DoStringise(const spv::GroupOperation &el) +rdcstr DoStringise(const spv::GroupOperation &el) { BEGIN_ENUM_STRINGISE(spv::GroupOperation) { @@ -1017,7 +1017,7 @@ std::string DoStringise(const spv::GroupOperation &el) } template <> -std::string DoStringise(const spv::FunctionControlMask &el) +rdcstr DoStringise(const spv::FunctionControlMask &el) { BEGIN_BITFIELD_STRINGISE(spv::FunctionControlMask); { @@ -1030,7 +1030,7 @@ std::string DoStringise(const spv::FunctionControlMask &el) } template <> -std::string DoStringise(const spv::SelectionControlMask &el) +rdcstr DoStringise(const spv::SelectionControlMask &el) { BEGIN_BITFIELD_STRINGISE(spv::SelectionControlMask); { @@ -1041,7 +1041,7 @@ std::string DoStringise(const spv::SelectionControlMask &el) } template <> -std::string DoStringise(const spv::LoopControlMask &el) +rdcstr DoStringise(const spv::LoopControlMask &el) { BEGIN_BITFIELD_STRINGISE(spv::LoopControlMask); { @@ -1054,7 +1054,7 @@ std::string DoStringise(const spv::LoopControlMask &el) } template <> -std::string DoStringise(const spv::MemoryAccessMask &el) +rdcstr DoStringise(const spv::MemoryAccessMask &el) { BEGIN_BITFIELD_STRINGISE(spv::MemoryAccessMask); { @@ -1070,7 +1070,7 @@ std::string DoStringise(const spv::MemoryAccessMask &el) } template <> -std::string DoStringise(const spv::MemorySemanticsMask &el) +rdcstr DoStringise(const spv::MemorySemanticsMask &el) { BEGIN_BITFIELD_STRINGISE(spv::MemorySemanticsMask); { diff --git a/renderdoc/driver/vulkan/vk_common.cpp b/renderdoc/driver/vulkan/vk_common.cpp index 4391a3b5d..e275c288d 100644 --- a/renderdoc/driver/vulkan/vk_common.cpp +++ b/renderdoc/driver/vulkan/vk_common.cpp @@ -694,7 +694,7 @@ void DoSerialise(SerialiserType &ser, VkInitParams &el) SERIALISE_MEMBER(APIVersion); SERIALISE_MEMBER(Layers); SERIALISE_MEMBER(Extensions); - SERIALISE_MEMBER(InstanceID).TypedAs("VkInstance"); + SERIALISE_MEMBER(InstanceID).TypedAs("VkInstance"_lit); } INSTANTIATE_SERIALISE_TYPE(VkInitParams); diff --git a/renderdoc/driver/vulkan/vk_core.cpp b/renderdoc/driver/vulkan/vk_core.cpp index d1af1f424..df1510a9b 100644 --- a/renderdoc/driver/vulkan/vk_core.cpp +++ b/renderdoc/driver/vulkan/vk_core.cpp @@ -1277,7 +1277,7 @@ void WrappedVulkan::EndCaptureFrame(VkImage presentImage) ser.SetDrawChunk(); SCOPED_SERIALISE_CHUNK(SystemChunk::CaptureEnd); - SERIALISE_ELEMENT_LOCAL(PresentedImage, GetResID(presentImage)).TypedAs("VkImage"); + SERIALISE_ELEMENT_LOCAL(PresentedImage, GetResID(presentImage)).TypedAs("VkImage"_lit); m_FrameCaptureRecord->AddChunk(scope.Get()); } @@ -2943,7 +2943,7 @@ bool WrappedVulkan::ProcessChunk(ReadSerialiser &ser, VulkanChunk chunk) } else if(system == SystemChunk::CaptureEnd) { - SERIALISE_ELEMENT_LOCAL(PresentedImage, ResourceId()).TypedAs("VkImage"); + SERIALISE_ELEMENT_LOCAL(PresentedImage, ResourceId()).TypedAs("VkImage"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/vulkan/vk_initstate.cpp b/renderdoc/driver/vulkan/vk_initstate.cpp index 69d90ed9d..fd1192f7e 100644 --- a/renderdoc/driver/vulkan/vk_initstate.cpp +++ b/renderdoc/driver/vulkan/vk_initstate.cpp @@ -657,17 +657,17 @@ uint64_t WrappedVulkan::GetSize_InitialState(ResourceId id, const VkInitialConte return 128; } -static const char *NameOfType(VkResourceType type) +static rdcliteral NameOfType(VkResourceType type) { switch(type) { - case eResDescriptorSet: return "VkDescriptorSet"; - case eResDeviceMemory: return "VkDeviceMemory"; - case eResBuffer: return "VkBuffer"; - case eResImage: return "VkImage"; + case eResDescriptorSet: return "VkDescriptorSet"_lit; + case eResDeviceMemory: return "VkDeviceMemory"_lit; + case eResBuffer: return "VkBuffer"_lit; + case eResImage: return "VkImage"_lit; default: break; } - return "VkResource"; + return "VkResource"_lit; } template @@ -1015,7 +1015,7 @@ bool WrappedVulkan::Serialise_InitialState(SerialiserType &ser, ResourceId id, // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("Contents", Contents, ContentsSize, SerialiserFlags::NoFlags); + ser.Serialise("Contents"_lit, Contents, ContentsSize, SerialiserFlags::NoFlags); // unmap the resource we mapped before - we need to do this on read and on write. if(!IsStructuredExporting(m_State) && mappedMem.mem != VK_NULL_HANDLE) diff --git a/renderdoc/driver/vulkan/vk_manager.cpp b/renderdoc/driver/vulkan/vk_manager.cpp index 115ce6440..e2fdaef1f 100644 --- a/renderdoc/driver/vulkan/vk_manager.cpp +++ b/renderdoc/driver/vulkan/vk_manager.cpp @@ -257,7 +257,7 @@ void VulkanResourceManager::SerialiseImageStates(SerialiserType &ser, for(uint32_t i = 0; i < NumImages; i++) { - SERIALISE_ELEMENT_LOCAL(Image, (ResourceId)(srcit->first)).TypedAs("VkImage"); + SERIALISE_ELEMENT_LOCAL(Image, (ResourceId)(srcit->first)).TypedAs("VkImage"_lit); SERIALISE_ELEMENT_LOCAL(ImageState, (ImageLayouts)(srcit->second)); ResourceId liveid; diff --git a/renderdoc/driver/vulkan/vk_serialise.cpp b/renderdoc/driver/vulkan/vk_serialise.cpp index 427162ae3..a5cdb082d 100644 --- a/renderdoc/driver/vulkan/vk_serialise.cpp +++ b/renderdoc/driver/vulkan/vk_serialise.cpp @@ -158,11 +158,13 @@ DECL_VKFLAG_EXT(VkDescriptorBinding, EXT); // serialise a member as flags - cast to the Bits enum for serialisation so the stringification // picks up the bitfield and doesn't treat it as uint32_t. Then we rename the type back to the base // flags type so the structured data is as accurate as possible. -#define SERIALISE_MEMBER_VKFLAGS(flagstype, name) \ - SERIALISE_MEMBER_TYPED(CONCAT(flagstype, Bits), name).TypedAs(STRINGIZE(flagstype)) +#define SERIALISE_MEMBER_VKFLAGS(flagstype, name) \ + SERIALISE_MEMBER_TYPED(CONCAT(flagstype, Bits), name) \ + .TypedAs(STRING_LITERAL(STRINGIZE(flagstype))) -#define SERIALISE_MEMBER_ARRAY_VKFLAGS(flagstype, name, count) \ - SERIALISE_MEMBER_ARRAY_TYPED(CONCAT(flagstype, Bits), name, count).TypedAs(STRINGIZE(flagstype)) +#define SERIALISE_MEMBER_ARRAY_VKFLAGS(flagstype, name, count) \ + SERIALISE_MEMBER_ARRAY_TYPED(CONCAT(flagstype, Bits), name, count) \ + .TypedAs(STRING_LITERAL(STRINGIZE(flagstype))) // simple way to express "resources referenced from this struct don't have to be present." // since this is used during read when the processing is single-threaded, we make it a static @@ -979,7 +981,7 @@ template static void SerialiseNext(SerialiserType &ser, VkStructureType &sType, const void *&pNext) { // this is the parent sType, serialised here for convenience - ser.Serialise("sType", sType); + ser.Serialise("sType"_lit, sType); if(ser.IsReading()) { @@ -990,19 +992,19 @@ static void SerialiseNext(SerialiserType &ser, VkStructureType &sType, const voi // hidden as it doesn't correspond to the actual pNext, it's just metadata to help us launch the // serialisation. VkStructureType *nextType = NULL; - ser.SerialiseNullable("pNext", nextType); + ser.SerialiseNullable("pNext"_lit, nextType); // most common case - no pNext serialised. Bail immediately if(nextType == NULL) { // fixup the structured data, set the type to void* - ser.TypedAs("void *"); + ser.TypedAs("void *"_lit); return; } // hide and rename the pNextType if we got something - we'll want the pNext below to be the only // thing user-facing. - ser.Named("pNextType").Hidden(); + ser.Named("pNextType"_lit).Hidden(); #define PNEXT_UNSUPPORTED(StructType) \ case StructType: \ @@ -1013,14 +1015,14 @@ static void SerialiseNext(SerialiserType &ser, VkStructureType &sType, const voi } // if we come across a struct we should process, then serialise a pointer to it. -#define PNEXT_STRUCT(StructType, StructName) \ - case StructType: \ - { \ - StructName *nextStruct = NULL; \ - ser.SerialiseNullable("pNext", nextStruct); \ - pNext = nextStruct; \ - handled = true; \ - break; \ +#define PNEXT_STRUCT(StructType, StructName) \ + case StructType: \ + { \ + StructName *nextStruct = NULL; \ + ser.SerialiseNullable("pNext"_lit, nextStruct); \ + pNext = nextStruct; \ + handled = true; \ + break; \ } // we don't want a default case to ensure we get a compile error if we forget to implement a @@ -1061,15 +1063,15 @@ static void SerialiseNext(SerialiserType &ser, VkStructureType &sType, const voi // We don't have to go any further, the act of serialising this struct will walk the chain further, // so we can return immediately. #undef PNEXT_STRUCT -#define PNEXT_STRUCT(StructType, StructName) \ - case StructType: \ - { \ - VkStructureType *nextType = &next->sType; \ - ser.SerialiseNullable("pNextType", nextType); \ - StructName *actual = (StructName *)next; \ - ser.SerialiseNullable("pNext", actual); \ - handled = true; \ - return; \ +#define PNEXT_STRUCT(StructType, StructName) \ + case StructType: \ + { \ + VkStructureType *nextType = &next->sType; \ + ser.SerialiseNullable("pNextType"_lit, nextType); \ + StructName *actual = (StructName *)next; \ + ser.SerialiseNullable("pNext"_lit, actual); \ + handled = true; \ + return; \ } // we don't want a default case to ensure we get a compile error if we forget to implement a @@ -1098,7 +1100,7 @@ static void SerialiseNext(SerialiserType &ser, VkStructureType &sType, const voi // if we got here, either pNext was NULL (common) or we skipped the whole chain. Serialise a // NULL structure type to indicate that. VkStructureType *dummy = NULL; - ser.SerialiseNullable("pNext", dummy); + ser.SerialiseNullable("pNext"_lit, dummy); } } @@ -1393,7 +1395,7 @@ void DoSerialise(SerialiserType &ser, VkPhysicalDeviceLimits &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t minMemoryMapAlignment = (uint64_t)el.minMemoryMapAlignment; - ser.Serialise("minMemoryMapAlignment", minMemoryMapAlignment); + ser.Serialise("minMemoryMapAlignment"_lit, minMemoryMapAlignment); if(ser.IsReading()) el.minMemoryMapAlignment = (size_t)minMemoryMapAlignment; } @@ -1736,8 +1738,9 @@ void DoSerialise(SerialiserType &ser, VkSubmitInfo &el) } u; u.orig = &el.pWaitDstStageMask; - ser.Serialise("pWaitDstStageMask", *u.typed, el.waitSemaphoreCount, SerialiserFlags::AllocateMemory) - .TypedAs("VkPipelineStageFlags"); + ser.Serialise("pWaitDstStageMask"_lit, *u.typed, el.waitSemaphoreCount, + SerialiserFlags::AllocateMemory) + .TypedAs("VkPipelineStageFlags"_lit); SERIALISE_MEMBER(commandBufferCount); SERIALISE_MEMBER_ARRAY(pCommandBuffers, commandBufferCount); @@ -2316,7 +2319,7 @@ void DoSerialise(SerialiserType &ser, VkSpecializationMapEntry &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t size = el.size; - ser.Serialise("size", size); + ser.Serialise("size"_lit, size); if(ser.IsReading()) el.size = (size_t)size; } @@ -2331,7 +2334,7 @@ void DoSerialise(SerialiserType &ser, VkSpecializationInfo &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t dataSize = el.dataSize; - ser.Serialise("dataSize", dataSize); + ser.Serialise("dataSize"_lit, dataSize); if(ser.IsReading()) el.dataSize = (size_t)dataSize; } @@ -2357,7 +2360,7 @@ void DoSerialise(SerialiserType &ser, VkPipelineCacheCreateInfo &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t initialDataSize = el.initialDataSize; - ser.Serialise("initialDataSize", initialDataSize); + ser.Serialise("initialDataSize"_lit, initialDataSize); if(ser.IsReading()) el.initialDataSize = (size_t)initialDataSize; } @@ -2404,7 +2407,7 @@ void DoSerialise(SerialiserType &ser, VkShaderModuleCreateInfo &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t codeSize = el.codeSize; - ser.Serialise("codeSize", codeSize); + ser.Serialise("codeSize"_lit, codeSize); if(ser.IsReading()) el.codeSize = (size_t)codeSize; } @@ -2412,7 +2415,7 @@ void DoSerialise(SerialiserType &ser, VkShaderModuleCreateInfo &el) // serialise as void* so it goes through as a buffer, not an actual array of integers. { const void *pCode = el.pCode; - ser.Serialise("pCode", pCode, el.codeSize, SerialiserFlags::AllocateMemory); + ser.Serialise("pCode"_lit, pCode, el.codeSize, SerialiserFlags::AllocateMemory); if(ser.IsReading()) el.pCode = (uint32_t *)pCode; } @@ -3274,8 +3277,8 @@ void DoSerialise(SerialiserType &ser, VkDebugReportCallbackCreateInfoEXT &el) // display them uint64_t pfnCallback = (uint64_t)el.pfnCallback; uint64_t pUserData = (uint64_t)el.pUserData; - ser.Serialise("pfnCallback", pfnCallback); - ser.Serialise("pUserData", pUserData); + ser.Serialise("pfnCallback"_lit, pfnCallback); + ser.Serialise("pUserData"_lit, pUserData); } template <> @@ -3348,8 +3351,8 @@ void DoSerialise(SerialiserType &ser, VkDebugUtilsMessengerCreateInfoEXT &el) // display them uint64_t pfnUserCallback = (uint64_t)el.pfnUserCallback; uint64_t pUserData = (uint64_t)el.pUserData; - ser.Serialise("pfnUserCallback", pfnUserCallback); - ser.Serialise("pUserData", pUserData); + ser.Serialise("pfnUserCallback"_lit, pfnUserCallback); + ser.Serialise("pUserData"_lit, pUserData); } template <> @@ -3363,15 +3366,15 @@ void Deserialise(const VkDebugUtilsMessengerCreateInfoEXT &el) template void DoSerialise(SerialiserType &ser, DescriptorSetSlotImageInfo &el) { - SERIALISE_MEMBER(sampler).TypedAs("VkSampler"); - SERIALISE_MEMBER(imageView).TypedAs("VkImageView"); + SERIALISE_MEMBER(sampler).TypedAs("VkSampler"_lit); + SERIALISE_MEMBER(imageView).TypedAs("VkImageView"_lit); SERIALISE_MEMBER(imageLayout); } template void DoSerialise(SerialiserType &ser, DescriptorSetSlotBufferInfo &el) { - SERIALISE_MEMBER(buffer).TypedAs("VkBuffer"); + SERIALISE_MEMBER(buffer).TypedAs("VkBuffer"_lit); SERIALISE_MEMBER(offset); SERIALISE_MEMBER(range); } @@ -3388,9 +3391,9 @@ void DoSerialise(SerialiserType &ser, DescriptorSetSlot &el) ser.SetStructArg( uint64_t(VkDescriptorImageInfoValidity::Sampler | VkDescriptorImageInfoValidity::ImageView)); - SERIALISE_MEMBER(bufferInfo).TypedAs("VkDescriptorBufferInfo"); - SERIALISE_MEMBER(imageInfo).TypedAs("VkDescriptorImageInfo"); - SERIALISE_MEMBER(texelBufferView).TypedAs("VkBufferView"); + SERIALISE_MEMBER(bufferInfo).TypedAs("VkDescriptorBufferInfo"_lit); + SERIALISE_MEMBER(imageInfo).TypedAs("VkDescriptorImageInfo"_lit); + SERIALISE_MEMBER(texelBufferView).TypedAs("VkBufferView"_lit); } template @@ -3444,8 +3447,8 @@ void DoSerialise(SerialiserType &ser, VkDescriptorUpdateTemplateEntry &el) { uint64_t offset = el.offset; uint64_t stride = el.stride; - ser.Serialise("offset", offset); - ser.Serialise("stride", stride); + ser.Serialise("offset"_lit, offset); + ser.Serialise("stride"_lit, stride); el.offset = (size_t)offset; el.stride = (size_t)stride; } @@ -4357,7 +4360,7 @@ void DoSerialise(SerialiserType &ser, VkValidationCacheCreateInfoEXT &el) // don't serialise size_t, otherwise capture/replay between different bit-ness won't work { uint64_t initialDataSize = (uint64_t)el.initialDataSize; - ser.Serialise("initialDataSize", initialDataSize); + ser.Serialise("initialDataSize"_lit, initialDataSize); if(ser.IsReading()) el.initialDataSize = (size_t)initialDataSize; } @@ -5982,7 +5985,8 @@ void DoSerialise(SerialiserType &ser, VkPhysicalDeviceGroupProperties &el) // manual call to Serialise to ensure we only serialise the number of devices, but also don't // allocate memory VkPhysicalDevice *devs = el.physicalDevices; - ser.Serialise("physicalDevices", devs, (uint64_t)el.physicalDeviceCount, SerialiserFlags::NoFlags); + ser.Serialise("physicalDevices"_lit, devs, (uint64_t)el.physicalDeviceCount, + SerialiserFlags::NoFlags); SERIALISE_MEMBER(subsetAllocation); } @@ -6973,7 +6977,7 @@ void DoSerialise(SerialiserType &ser, VkImportMemoryWin32HandleInfoNV &el) { uint64_t handle = (uint64_t)el.handle; - ser.Serialise("handle", handle); + ser.Serialise("handle"_lit, handle); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -6996,7 +7000,7 @@ void DoSerialise(SerialiserType &ser, VkExportMemoryWin32HandleInfoNV &el) { // serialise pointer as plain integer, rather than recursing and serialising struct uint64_t pAttributes = (uint64_t)el.pAttributes; - ser.Serialise("pAttributes", pAttributes).TypedAs("SECURITY_ATTRIBUTES*"); + ser.Serialise("pAttributes"_lit, pAttributes).TypedAs("SECURITY_ATTRIBUTES*"_lit); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7022,7 +7026,7 @@ void DoSerialise(SerialiserType &ser, VkImportMemoryWin32HandleInfoKHR &el) { uint64_t handle = (uint64_t)el.handle; - ser.Serialise("handle", handle); + ser.Serialise("handle"_lit, handle); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7035,7 +7039,7 @@ void DoSerialise(SerialiserType &ser, VkImportMemoryWin32HandleInfoKHR &el) if(ser.IsWriting()) name = el.name ? StringFormat::Wide2UTF8(std::wstring(el.name)) : ""; - ser.Serialise("name", name); + ser.Serialise("name"_lit, name); // we don't expose UTF82Wide on all platforms, but as above this struct won't be valid anyway if(ser.IsReading()) @@ -7058,7 +7062,7 @@ void DoSerialise(SerialiserType &ser, VkExportMemoryWin32HandleInfoKHR &el) { // serialise pointer as plain integer, rather than recursing and serialising struct uint64_t pAttributes = (uint64_t)el.pAttributes; - ser.Serialise("pAttributes", pAttributes).TypedAs("SECURITY_ATTRIBUTES*"); + ser.Serialise("pAttributes"_lit, pAttributes).TypedAs("SECURITY_ATTRIBUTES*"_lit); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7073,7 +7077,7 @@ void DoSerialise(SerialiserType &ser, VkExportMemoryWin32HandleInfoKHR &el) if(ser.IsWriting()) name = el.name ? StringFormat::Wide2UTF8(std::wstring(el.name)) : ""; - ser.Serialise("name", name); + ser.Serialise("name"_lit, name); // we don't expose UTF82Wide on all platforms, but as above this struct won't be valid anyway if(ser.IsReading()) @@ -7127,7 +7131,7 @@ void DoSerialise(SerialiserType &ser, VkExportFenceWin32HandleInfoKHR &el) { // serialise pointer as plain integer, rather than recursing and serialising struct uint64_t pAttributes = (uint64_t)el.pAttributes; - ser.Serialise("pAttributes", pAttributes).TypedAs("SECURITY_ATTRIBUTES*"); + ser.Serialise("pAttributes"_lit, pAttributes).TypedAs("SECURITY_ATTRIBUTES*"_lit); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7142,7 +7146,7 @@ void DoSerialise(SerialiserType &ser, VkExportFenceWin32HandleInfoKHR &el) if(ser.IsWriting()) name = el.name ? StringFormat::Wide2UTF8(std::wstring(el.name)) : ""; - ser.Serialise("name", name); + ser.Serialise("name"_lit, name); // we don't expose UTF82Wide on all platforms, but as above this struct won't be valid anyway if(ser.IsReading()) @@ -7168,7 +7172,7 @@ void DoSerialise(SerialiserType &ser, VkImportFenceWin32HandleInfoKHR &el) { uint64_t handle = (uint64_t)el.handle; - ser.Serialise("handle", handle); + ser.Serialise("handle"_lit, handle); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7181,7 +7185,7 @@ void DoSerialise(SerialiserType &ser, VkImportFenceWin32HandleInfoKHR &el) if(ser.IsWriting()) name = el.name ? StringFormat::Wide2UTF8(std::wstring(el.name)) : ""; - ser.Serialise("name", name); + ser.Serialise("name"_lit, name); // we don't expose UTF82Wide on all platforms, but as above this struct won't be valid anyway if(ser.IsReading()) @@ -7220,7 +7224,7 @@ void DoSerialise(SerialiserType &ser, VkExportSemaphoreWin32HandleInfoKHR &el) { // serialise pointer as plain integer, rather than recursing and serialising struct uint64_t pAttributes = (uint64_t)el.pAttributes; - ser.Serialise("pAttributes", pAttributes).TypedAs("SECURITY_ATTRIBUTES*"); + ser.Serialise("pAttributes"_lit, pAttributes).TypedAs("SECURITY_ATTRIBUTES*"_lit); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7235,7 +7239,7 @@ void DoSerialise(SerialiserType &ser, VkExportSemaphoreWin32HandleInfoKHR &el) if(ser.IsWriting()) name = el.name ? StringFormat::Wide2UTF8(std::wstring(el.name)) : ""; - ser.Serialise("name", name); + ser.Serialise("name"_lit, name); // we don't expose UTF82Wide on all platforms, but as above this struct won't be valid anyway if(ser.IsReading()) @@ -7261,7 +7265,7 @@ void DoSerialise(SerialiserType &ser, VkImportSemaphoreWin32HandleInfoKHR &el) { uint64_t handle = (uint64_t)el.handle; - ser.Serialise("handle", handle); + ser.Serialise("handle"_lit, handle); // won't be valid on read, though we won't try to replay this anyway if(ser.IsReading()) @@ -7274,7 +7278,7 @@ void DoSerialise(SerialiserType &ser, VkImportSemaphoreWin32HandleInfoKHR &el) if(ser.IsWriting()) name = el.name ? StringFormat::Wide2UTF8(std::wstring(el.name)) : ""; - ser.Serialise("name", name); + ser.Serialise("name"_lit, name); // we don't expose UTF82Wide on all platforms, but as above this struct won't be valid anyway if(ser.IsReading()) @@ -7419,7 +7423,7 @@ void DoSerialise(SerialiserType &ser, VkSurfaceFullScreenExclusiveWin32InfoEXT & SerialiseNext(ser, el.sType, el.pNext); uint64_t hmonitor = (uint64_t)el.hmonitor; - ser.Serialise("hmonitor", hmonitor); + ser.Serialise("hmonitor"_lit, hmonitor); } template <> diff --git a/renderdoc/driver/vulkan/vk_sparse_initstate.cpp b/renderdoc/driver/vulkan/vk_sparse_initstate.cpp index f0ff9b94e..1adbf510e 100644 --- a/renderdoc/driver/vulkan/vk_sparse_initstate.cpp +++ b/renderdoc/driver/vulkan/vk_sparse_initstate.cpp @@ -481,7 +481,7 @@ bool WrappedVulkan::Serialise_SparseBufferInitialState(SerialiserType &ser, Reso // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("Contents", Contents, ContentsSize, SerialiserFlags::NoFlags); + ser.Serialise("Contents"_lit, Contents, ContentsSize, SerialiserFlags::NoFlags); // unmap the resource we mapped before - we need to do this on read and on write. if(!IsStructuredExporting(m_State) && mappedMem.mem != VK_NULL_HANDLE) @@ -584,7 +584,7 @@ bool WrappedVulkan::Serialise_SparseImageInitialState(SerialiserType &ser, Resou // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("Contents", Contents, ContentsSize, SerialiserFlags::NoFlags); + ser.Serialise("Contents"_lit, Contents, ContentsSize, SerialiserFlags::NoFlags); // unmap the resource we mapped before - we need to do this on read and on write. if(!IsStructuredExporting(m_State) && mappedMem.mem != VK_NULL_HANDLE) diff --git a/renderdoc/driver/vulkan/vk_stringise.cpp b/renderdoc/driver/vulkan/vk_stringise.cpp index 530cdc1a8..9f07c12df 100644 --- a/renderdoc/driver/vulkan/vk_stringise.cpp +++ b/renderdoc/driver/vulkan/vk_stringise.cpp @@ -26,7 +26,7 @@ #include "vk_resources.h" template <> -std::string DoStringise(const VulkanChunk &el) +rdcstr DoStringise(const VulkanChunk &el) { RDCCOMPILE_ASSERT((uint32_t)VulkanChunk::Max == 1134, "Chunks changed without updating names"); @@ -172,7 +172,7 @@ std::string DoStringise(const VulkanChunk &el) } template <> -std::string DoStringise(const VkResourceType &el) +rdcstr DoStringise(const VkResourceType &el) { BEGIN_ENUM_STRINGISE(VkResourceType); { @@ -209,7 +209,7 @@ std::string DoStringise(const VkResourceType &el) } template <> -std::string DoStringise(const MemoryScope &el) +rdcstr DoStringise(const MemoryScope &el) { BEGIN_ENUM_STRINGISE(MemoryScope); { @@ -220,7 +220,7 @@ std::string DoStringise(const MemoryScope &el) } template <> -std::string DoStringise(const MemoryType &el) +rdcstr DoStringise(const MemoryType &el) { BEGIN_ENUM_STRINGISE(MemoryType) { @@ -232,7 +232,7 @@ std::string DoStringise(const MemoryType &el) } template <> -std::string DoStringise(const VkFlagWithNoBits &el) +rdcstr DoStringise(const VkFlagWithNoBits &el) { if(el != 0) return StringFormat::Fmt("Invalid bits set: %x", el); @@ -240,7 +240,7 @@ std::string DoStringise(const VkFlagWithNoBits &el) } template <> -std::string DoStringise(const VkQueueFlagBits &el) +rdcstr DoStringise(const VkQueueFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkQueueFlagBits); { @@ -254,7 +254,7 @@ std::string DoStringise(const VkQueueFlagBits &el) } template <> -std::string DoStringise(const VkPipelineCreateFlagBits &el) +rdcstr DoStringise(const VkPipelineCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkPipelineCreateFlagBits); { @@ -269,7 +269,7 @@ std::string DoStringise(const VkPipelineCreateFlagBits &el) } template <> -std::string DoStringise(const VkPipelineStageFlagBits &el) +rdcstr DoStringise(const VkPipelineStageFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkPipelineStageFlagBits); { @@ -304,7 +304,7 @@ std::string DoStringise(const VkPipelineStageFlagBits &el) } template <> -std::string DoStringise(const VkBufferUsageFlagBits &el) +rdcstr DoStringise(const VkBufferUsageFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkBufferUsageFlagBits); { @@ -327,7 +327,7 @@ std::string DoStringise(const VkBufferUsageFlagBits &el) } template <> -std::string DoStringise(const VkImageViewCreateFlagBits &el) +rdcstr DoStringise(const VkImageViewCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkImageViewCreateFlagBits); { @@ -337,7 +337,7 @@ std::string DoStringise(const VkImageViewCreateFlagBits &el) } template <> -std::string DoStringise(const VkImageUsageFlagBits &el) +rdcstr DoStringise(const VkImageUsageFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkImageUsageFlagBits); { @@ -356,7 +356,7 @@ std::string DoStringise(const VkImageUsageFlagBits &el) } template <> -std::string DoStringise(const VkBufferCreateFlagBits &el) +rdcstr DoStringise(const VkBufferCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkBufferCreateFlagBits); { @@ -370,7 +370,7 @@ std::string DoStringise(const VkBufferCreateFlagBits &el) } template <> -std::string DoStringise(const VkImageCreateFlagBits &el) +rdcstr DoStringise(const VkImageCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkImageCreateFlagBits); { @@ -394,7 +394,7 @@ std::string DoStringise(const VkImageCreateFlagBits &el) } template <> -std::string DoStringise(const VkSamplerCreateFlagBits &el) +rdcstr DoStringise(const VkSamplerCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSamplerCreateFlagBits); { @@ -405,7 +405,7 @@ std::string DoStringise(const VkSamplerCreateFlagBits &el) } template <> -std::string DoStringise(const VkSparseMemoryBindFlagBits &el) +rdcstr DoStringise(const VkSparseMemoryBindFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSparseMemoryBindFlagBits); { @@ -415,7 +415,7 @@ std::string DoStringise(const VkSparseMemoryBindFlagBits &el) } template <> -std::string DoStringise(const VkCommandPoolCreateFlagBits &el) +rdcstr DoStringise(const VkCommandPoolCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkCommandPoolCreateFlagBits); { @@ -427,7 +427,7 @@ std::string DoStringise(const VkCommandPoolCreateFlagBits &el) } template <> -std::string DoStringise(const VkCommandPoolResetFlagBits &el) +rdcstr DoStringise(const VkCommandPoolResetFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkCommandPoolResetFlagBits); { @@ -437,7 +437,7 @@ std::string DoStringise(const VkCommandPoolResetFlagBits &el) } template <> -std::string DoStringise(const VkCommandBufferUsageFlagBits &el) +rdcstr DoStringise(const VkCommandBufferUsageFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkCommandBufferUsageFlagBits); { @@ -449,7 +449,7 @@ std::string DoStringise(const VkCommandBufferUsageFlagBits &el) } template <> -std::string DoStringise(const VkDescriptorPoolCreateFlagBits &el) +rdcstr DoStringise(const VkDescriptorPoolCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkDescriptorPoolCreateFlagBits); { @@ -460,7 +460,7 @@ std::string DoStringise(const VkDescriptorPoolCreateFlagBits &el) } template <> -std::string DoStringise(const VkFenceCreateFlagBits &el) +rdcstr DoStringise(const VkFenceCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkFenceCreateFlagBits); { @@ -470,7 +470,7 @@ std::string DoStringise(const VkFenceCreateFlagBits &el) } template <> -std::string DoStringise(const VkQueryPipelineStatisticFlagBits &el) +rdcstr DoStringise(const VkQueryPipelineStatisticFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkQueryPipelineStatisticFlagBits); { @@ -490,7 +490,7 @@ std::string DoStringise(const VkQueryPipelineStatisticFlagBits &el) } template <> -std::string DoStringise(const VkQueryControlFlagBits &el) +rdcstr DoStringise(const VkQueryControlFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkQueryControlFlagBits); { @@ -500,7 +500,7 @@ std::string DoStringise(const VkQueryControlFlagBits &el) } template <> -std::string DoStringise(const VkQueryResultFlagBits &el) +rdcstr DoStringise(const VkQueryResultFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkQueryResultFlagBits); { @@ -513,7 +513,7 @@ std::string DoStringise(const VkQueryResultFlagBits &el) } template <> -std::string DoStringise(const VkAttachmentDescriptionFlagBits &el) +rdcstr DoStringise(const VkAttachmentDescriptionFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkAttachmentDescriptionFlagBits); { @@ -523,7 +523,7 @@ std::string DoStringise(const VkAttachmentDescriptionFlagBits &el) } template <> -std::string DoStringise(const VkResolveModeFlagBitsKHR &el) +rdcstr DoStringise(const VkResolveModeFlagBitsKHR &el) { BEGIN_BITFIELD_STRINGISE(VkResolveModeFlagBitsKHR); { @@ -537,7 +537,7 @@ std::string DoStringise(const VkResolveModeFlagBitsKHR &el) } template <> -std::string DoStringise(const VkSampleCountFlagBits &el) +rdcstr DoStringise(const VkSampleCountFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSampleCountFlagBits); { @@ -553,7 +553,7 @@ std::string DoStringise(const VkSampleCountFlagBits &el) } template <> -std::string DoStringise(const VkImageAspectFlagBits &el) +rdcstr DoStringise(const VkImageAspectFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkImageAspectFlagBits); { @@ -573,7 +573,7 @@ std::string DoStringise(const VkImageAspectFlagBits &el) } template <> -std::string DoStringise(const VkDependencyFlagBits &el) +rdcstr DoStringise(const VkDependencyFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkDependencyFlagBits); { @@ -585,7 +585,7 @@ std::string DoStringise(const VkDependencyFlagBits &el) } template <> -std::string DoStringise(const VkShaderStageFlagBits &el) +rdcstr DoStringise(const VkShaderStageFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkShaderStageFlagBits); { @@ -612,7 +612,7 @@ std::string DoStringise(const VkShaderStageFlagBits &el) } template <> -std::string DoStringise(const VkMemoryHeapFlagBits &el) +rdcstr DoStringise(const VkMemoryHeapFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkMemoryHeapFlagBits); { @@ -623,7 +623,7 @@ std::string DoStringise(const VkMemoryHeapFlagBits &el) } template <> -std::string DoStringise(const VkMemoryPropertyFlagBits &el) +rdcstr DoStringise(const VkMemoryPropertyFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkMemoryPropertyFlagBits); { @@ -638,7 +638,7 @@ std::string DoStringise(const VkMemoryPropertyFlagBits &el) } template <> -std::string DoStringise(const VkAccessFlagBits &el) +rdcstr DoStringise(const VkAccessFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkAccessFlagBits); { @@ -675,7 +675,7 @@ std::string DoStringise(const VkAccessFlagBits &el) } template <> -std::string DoStringise(const VkExternalMemoryHandleTypeFlagBitsNV &el) +rdcstr DoStringise(const VkExternalMemoryHandleTypeFlagBitsNV &el) { BEGIN_BITFIELD_STRINGISE(VkExternalMemoryHandleTypeFlagBitsNV); { @@ -689,7 +689,7 @@ std::string DoStringise(const VkExternalMemoryHandleTypeFlagBitsNV &el) } template <> -std::string DoStringise(const VkExternalMemoryHandleTypeFlagBits &el) +rdcstr DoStringise(const VkExternalMemoryHandleTypeFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkExternalMemoryHandleTypeFlagBits); { @@ -709,7 +709,7 @@ std::string DoStringise(const VkExternalMemoryHandleTypeFlagBits &el) } template <> -std::string DoStringise(const VkExternalSemaphoreHandleTypeFlagBits &el) +rdcstr DoStringise(const VkExternalSemaphoreHandleTypeFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkExternalSemaphoreHandleTypeFlagBits); { @@ -723,7 +723,7 @@ std::string DoStringise(const VkExternalSemaphoreHandleTypeFlagBits &el) } template <> -std::string DoStringise(const VkExternalFenceHandleTypeFlagBits &el) +rdcstr DoStringise(const VkExternalFenceHandleTypeFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkExternalFenceHandleTypeFlagBits); { @@ -736,7 +736,7 @@ std::string DoStringise(const VkExternalFenceHandleTypeFlagBits &el) } template <> -std::string DoStringise(const VkSurfaceCounterFlagBitsEXT &el) +rdcstr DoStringise(const VkSurfaceCounterFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkSurfaceCounterFlagBitsEXT); { @@ -746,7 +746,7 @@ std::string DoStringise(const VkSurfaceCounterFlagBitsEXT &el) } template <> -std::string DoStringise(const VkDeviceGroupPresentModeFlagBitsKHR &el) +rdcstr DoStringise(const VkDeviceGroupPresentModeFlagBitsKHR &el) { BEGIN_BITFIELD_STRINGISE(VkDeviceGroupPresentModeFlagBitsKHR); { @@ -759,7 +759,7 @@ std::string DoStringise(const VkDeviceGroupPresentModeFlagBitsKHR &el) } template <> -std::string DoStringise(const VkDebugReportFlagBitsEXT &el) +rdcstr DoStringise(const VkDebugReportFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkDebugReportFlagBitsEXT); { @@ -773,7 +773,7 @@ std::string DoStringise(const VkDebugReportFlagBitsEXT &el) } template <> -std::string DoStringise(const VkDebugUtilsMessageSeverityFlagBitsEXT &el) +rdcstr DoStringise(const VkDebugUtilsMessageSeverityFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkDebugUtilsMessageSeverityFlagBitsEXT); { @@ -786,7 +786,7 @@ std::string DoStringise(const VkDebugUtilsMessageSeverityFlagBitsEXT &el) } template <> -std::string DoStringise(const VkConditionalRenderingFlagBitsEXT &el) +rdcstr DoStringise(const VkConditionalRenderingFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkConditionalRenderingFlagBitsEXT); { @@ -796,7 +796,7 @@ std::string DoStringise(const VkConditionalRenderingFlagBitsEXT &el) } template <> -std::string DoStringise(const VkDebugUtilsMessageTypeFlagBitsEXT &el) +rdcstr DoStringise(const VkDebugUtilsMessageTypeFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkDebugUtilsMessageTypeFlagBitsEXT); { @@ -808,7 +808,7 @@ std::string DoStringise(const VkDebugUtilsMessageTypeFlagBitsEXT &el) } template <> -std::string DoStringise(const VkMemoryAllocateFlagBits &el) +rdcstr DoStringise(const VkMemoryAllocateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkMemoryAllocateFlagBits); { @@ -818,7 +818,7 @@ std::string DoStringise(const VkMemoryAllocateFlagBits &el) } template <> -std::string DoStringise(const VkStencilFaceFlagBits &el) +rdcstr DoStringise(const VkStencilFaceFlagBits &el) { // technically a bitfield but each combination has a particular meaning BEGIN_ENUM_STRINGISE(VkStencilFaceFlagBits); @@ -831,7 +831,7 @@ std::string DoStringise(const VkStencilFaceFlagBits &el) } template <> -std::string DoStringise(const VkCullModeFlagBits &el) +rdcstr DoStringise(const VkCullModeFlagBits &el) { // technically a bitfield but each combination has a particular meaning BEGIN_ENUM_STRINGISE(VkCullModeFlagBits); @@ -845,7 +845,7 @@ std::string DoStringise(const VkCullModeFlagBits &el) } template <> -std::string DoStringise(const VkColorComponentFlagBits &el) +rdcstr DoStringise(const VkColorComponentFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkColorComponentFlagBits); { @@ -858,7 +858,7 @@ std::string DoStringise(const VkColorComponentFlagBits &el) } template <> -std::string DoStringise(const VkPipelineBindPoint &el) +rdcstr DoStringise(const VkPipelineBindPoint &el) { BEGIN_ENUM_STRINGISE(VkPipelineBindPoint); { @@ -870,7 +870,7 @@ std::string DoStringise(const VkPipelineBindPoint &el) } template <> -std::string DoStringise(const VkIndexType &el) +rdcstr DoStringise(const VkIndexType &el) { BEGIN_ENUM_STRINGISE(VkIndexType); { @@ -881,7 +881,7 @@ std::string DoStringise(const VkIndexType &el) } template <> -std::string DoStringise(const VkImageType &el) +rdcstr DoStringise(const VkImageType &el) { BEGIN_ENUM_STRINGISE(VkImageType); { @@ -893,7 +893,7 @@ std::string DoStringise(const VkImageType &el) } template <> -std::string DoStringise(const VkImageTiling &el) +rdcstr DoStringise(const VkImageTiling &el) { BEGIN_ENUM_STRINGISE(VkImageTiling); { @@ -905,7 +905,7 @@ std::string DoStringise(const VkImageTiling &el) } template <> -std::string DoStringise(const VkImageViewType &el) +rdcstr DoStringise(const VkImageViewType &el) { BEGIN_ENUM_STRINGISE(VkImageViewType); { @@ -921,7 +921,7 @@ std::string DoStringise(const VkImageViewType &el) } template <> -std::string DoStringise(const VkVertexInputRate &el) +rdcstr DoStringise(const VkVertexInputRate &el) { BEGIN_ENUM_STRINGISE(VkVertexInputRate); { @@ -932,7 +932,7 @@ std::string DoStringise(const VkVertexInputRate &el) } template <> -std::string DoStringise(const VkPolygonMode &el) +rdcstr DoStringise(const VkPolygonMode &el) { BEGIN_ENUM_STRINGISE(VkPolygonMode); { @@ -945,7 +945,7 @@ std::string DoStringise(const VkPolygonMode &el) } template <> -std::string DoStringise(const VkFrontFace &el) +rdcstr DoStringise(const VkFrontFace &el) { BEGIN_ENUM_STRINGISE(VkFrontFace); { @@ -956,7 +956,7 @@ std::string DoStringise(const VkFrontFace &el) } template <> -std::string DoStringise(const VkBlendFactor &el) +rdcstr DoStringise(const VkBlendFactor &el) { BEGIN_ENUM_STRINGISE(VkBlendFactor); { @@ -984,7 +984,7 @@ std::string DoStringise(const VkBlendFactor &el) } template <> -std::string DoStringise(const VkBlendOp &el) +rdcstr DoStringise(const VkBlendOp &el) { BEGIN_ENUM_STRINGISE(VkBlendOp); { @@ -1044,7 +1044,7 @@ std::string DoStringise(const VkBlendOp &el) } template <> -std::string DoStringise(const VkDynamicState &el) +rdcstr DoStringise(const VkDynamicState &el) { BEGIN_ENUM_STRINGISE(VkDynamicState); { @@ -1068,7 +1068,7 @@ std::string DoStringise(const VkDynamicState &el) } template <> -std::string DoStringise(const VkAttachmentLoadOp &el) +rdcstr DoStringise(const VkAttachmentLoadOp &el) { BEGIN_ENUM_STRINGISE(VkAttachmentLoadOp); { @@ -1080,7 +1080,7 @@ std::string DoStringise(const VkAttachmentLoadOp &el) } template <> -std::string DoStringise(const VkAttachmentStoreOp &el) +rdcstr DoStringise(const VkAttachmentStoreOp &el) { BEGIN_ENUM_STRINGISE(VkAttachmentStoreOp); { @@ -1091,7 +1091,7 @@ std::string DoStringise(const VkAttachmentStoreOp &el) } template <> -std::string DoStringise(const VkStencilOp &el) +rdcstr DoStringise(const VkStencilOp &el) { BEGIN_ENUM_STRINGISE(VkStencilOp); { @@ -1108,7 +1108,7 @@ std::string DoStringise(const VkStencilOp &el) } template <> -std::string DoStringise(const VkLogicOp &el) +rdcstr DoStringise(const VkLogicOp &el) { BEGIN_ENUM_STRINGISE(VkLogicOp); { @@ -1133,7 +1133,7 @@ std::string DoStringise(const VkLogicOp &el) } template <> -std::string DoStringise(const VkCompareOp &el) +rdcstr DoStringise(const VkCompareOp &el) { BEGIN_ENUM_STRINGISE(VkCompareOp); { @@ -1150,7 +1150,7 @@ std::string DoStringise(const VkCompareOp &el) } template <> -std::string DoStringise(const VkFilter &el) +rdcstr DoStringise(const VkFilter &el) { BEGIN_ENUM_STRINGISE(VkFilter); { @@ -1162,7 +1162,7 @@ std::string DoStringise(const VkFilter &el) } template <> -std::string DoStringise(const VkSamplerMipmapMode &el) +rdcstr DoStringise(const VkSamplerMipmapMode &el) { BEGIN_ENUM_STRINGISE(VkSamplerMipmapMode); { @@ -1173,7 +1173,7 @@ std::string DoStringise(const VkSamplerMipmapMode &el) } template <> -std::string DoStringise(const VkSamplerAddressMode &el) +rdcstr DoStringise(const VkSamplerAddressMode &el) { BEGIN_ENUM_STRINGISE(VkSamplerAddressMode); { @@ -1187,7 +1187,7 @@ std::string DoStringise(const VkSamplerAddressMode &el) } template <> -std::string DoStringise(const VkBorderColor &el) +rdcstr DoStringise(const VkBorderColor &el) { BEGIN_ENUM_STRINGISE(VkBorderColor); { @@ -1202,7 +1202,7 @@ std::string DoStringise(const VkBorderColor &el) } template <> -std::string DoStringise(const VkPrimitiveTopology &el) +rdcstr DoStringise(const VkPrimitiveTopology &el) { BEGIN_ENUM_STRINGISE(VkPrimitiveTopology); { @@ -1222,7 +1222,7 @@ std::string DoStringise(const VkPrimitiveTopology &el) } template <> -std::string DoStringise(const VkDescriptorType &el) +rdcstr DoStringise(const VkDescriptorType &el) { BEGIN_ENUM_STRINGISE(VkDescriptorType); { @@ -1244,7 +1244,7 @@ std::string DoStringise(const VkDescriptorType &el) } template <> -std::string DoStringise(const VkQueryType &el) +rdcstr DoStringise(const VkQueryType &el) { BEGIN_ENUM_STRINGISE(VkQueryType); { @@ -1258,7 +1258,7 @@ std::string DoStringise(const VkQueryType &el) } template <> -std::string DoStringise(const VkPhysicalDeviceType &el) +rdcstr DoStringise(const VkPhysicalDeviceType &el) { BEGIN_ENUM_STRINGISE(VkPhysicalDeviceType); { @@ -1272,7 +1272,7 @@ std::string DoStringise(const VkPhysicalDeviceType &el) } template <> -std::string DoStringise(const VkSharingMode &el) +rdcstr DoStringise(const VkSharingMode &el) { BEGIN_ENUM_STRINGISE(VkSharingMode); { @@ -1283,7 +1283,7 @@ std::string DoStringise(const VkSharingMode &el) } template <> -std::string DoStringise(const VkCommandBufferLevel &el) +rdcstr DoStringise(const VkCommandBufferLevel &el) { BEGIN_ENUM_STRINGISE(VkCommandBufferLevel); { @@ -1294,7 +1294,7 @@ std::string DoStringise(const VkCommandBufferLevel &el) } template <> -std::string DoStringise(const VkSubpassContents &el) +rdcstr DoStringise(const VkSubpassContents &el) { BEGIN_ENUM_STRINGISE(VkSubpassContents); { @@ -1305,7 +1305,7 @@ std::string DoStringise(const VkSubpassContents &el) } template <> -std::string DoStringise(const VkImageLayout &el) +rdcstr DoStringise(const VkImageLayout &el) { BEGIN_ENUM_STRINGISE(VkImageLayout); { @@ -1329,7 +1329,7 @@ std::string DoStringise(const VkImageLayout &el) } template <> -std::string DoStringise(const VkStructureType &el) +rdcstr DoStringise(const VkStructureType &el) { BEGIN_ENUM_STRINGISE(VkStructureType); { @@ -1672,7 +1672,7 @@ std::string DoStringise(const VkStructureType &el) } template <> -std::string DoStringise(const VkComponentSwizzle &el) +rdcstr DoStringise(const VkComponentSwizzle &el) { BEGIN_ENUM_STRINGISE(VkComponentSwizzle); { @@ -1688,7 +1688,7 @@ std::string DoStringise(const VkComponentSwizzle &el) } template <> -std::string DoStringise(const VkFormat &el) +rdcstr DoStringise(const VkFormat &el) { BEGIN_ENUM_STRINGISE(VkFormat); { @@ -1924,7 +1924,7 @@ std::string DoStringise(const VkFormat &el) } template <> -std::string DoStringise(const VkResult &el) +rdcstr DoStringise(const VkResult &el) { BEGIN_ENUM_STRINGISE(VkResult); { @@ -1968,7 +1968,7 @@ std::string DoStringise(const VkResult &el) //////////////////////////////////////////////////////////// template <> -std::string DoStringise(const VkSurfaceTransformFlagBitsKHR &el) +rdcstr DoStringise(const VkSurfaceTransformFlagBitsKHR &el) { BEGIN_BITFIELD_STRINGISE(VkSurfaceTransformFlagBitsKHR); { @@ -1986,7 +1986,7 @@ std::string DoStringise(const VkSurfaceTransformFlagBitsKHR &el) } template <> -std::string DoStringise(const VkCompositeAlphaFlagBitsKHR &el) +rdcstr DoStringise(const VkCompositeAlphaFlagBitsKHR &el) { BEGIN_BITFIELD_STRINGISE(VkCompositeAlphaFlagBitsKHR); { @@ -1999,7 +1999,7 @@ std::string DoStringise(const VkCompositeAlphaFlagBitsKHR &el) } template <> -std::string DoStringise(const VkColorSpaceKHR &el) +rdcstr DoStringise(const VkColorSpaceKHR &el) { BEGIN_ENUM_STRINGISE(VkColorSpaceKHR); { @@ -2024,7 +2024,7 @@ std::string DoStringise(const VkColorSpaceKHR &el) } template <> -std::string DoStringise(const VkPresentModeKHR &el) +rdcstr DoStringise(const VkPresentModeKHR &el) { BEGIN_ENUM_STRINGISE(VkPresentModeKHR); { @@ -2039,7 +2039,7 @@ std::string DoStringise(const VkPresentModeKHR &el) } template <> -std::string DoStringise(const VkDescriptorUpdateTemplateType &el) +rdcstr DoStringise(const VkDescriptorUpdateTemplateType &el) { BEGIN_ENUM_STRINGISE(VkDescriptorUpdateTemplateType); { @@ -2050,7 +2050,7 @@ std::string DoStringise(const VkDescriptorUpdateTemplateType &el) } template <> -std::string DoStringise(const VkConservativeRasterizationModeEXT &el) +rdcstr DoStringise(const VkConservativeRasterizationModeEXT &el) { BEGIN_ENUM_STRINGISE(VkConservativeRasterizationModeEXT); { @@ -2062,7 +2062,7 @@ std::string DoStringise(const VkConservativeRasterizationModeEXT &el) } template <> -std::string DoStringise(const VkTessellationDomainOrigin &el) +rdcstr DoStringise(const VkTessellationDomainOrigin &el) { BEGIN_ENUM_STRINGISE(VkTessellationDomainOrigin); { @@ -2073,7 +2073,7 @@ std::string DoStringise(const VkTessellationDomainOrigin &el) } template <> -std::string DoStringise(const VkSamplerReductionModeEXT &el) +rdcstr DoStringise(const VkSamplerReductionModeEXT &el) { BEGIN_ENUM_STRINGISE(VkSamplerReductionModeEXT); { @@ -2085,7 +2085,7 @@ std::string DoStringise(const VkSamplerReductionModeEXT &el) } template <> -std::string DoStringise(const VkTimeDomainEXT &el) +rdcstr DoStringise(const VkTimeDomainEXT &el) { BEGIN_ENUM_STRINGISE(VkTimeDomainEXT); { @@ -2098,7 +2098,7 @@ std::string DoStringise(const VkTimeDomainEXT &el) } template <> -std::string DoStringise(const VkSamplerYcbcrModelConversion &el) +rdcstr DoStringise(const VkSamplerYcbcrModelConversion &el) { BEGIN_ENUM_STRINGISE(VkSamplerYcbcrModelConversion); { @@ -2112,7 +2112,7 @@ std::string DoStringise(const VkSamplerYcbcrModelConversion &el) } template <> -std::string DoStringise(const VkSamplerYcbcrRange &el) +rdcstr DoStringise(const VkSamplerYcbcrRange &el) { BEGIN_ENUM_STRINGISE(VkSamplerYcbcrRange); { @@ -2123,7 +2123,7 @@ std::string DoStringise(const VkSamplerYcbcrRange &el) } template <> -std::string DoStringise(const VkChromaLocation &el) +rdcstr DoStringise(const VkChromaLocation &el) { BEGIN_ENUM_STRINGISE(VkChromaLocation); { @@ -2134,7 +2134,7 @@ std::string DoStringise(const VkChromaLocation &el) } template <> -std::string DoStringise(const VkDeviceQueueCreateFlagBits &el) +rdcstr DoStringise(const VkDeviceQueueCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkDeviceQueueCreateFlagBits); { @@ -2144,7 +2144,7 @@ std::string DoStringise(const VkDeviceQueueCreateFlagBits &el) } template <> -std::string DoStringise(const VkSubpassDescriptionFlagBits &el) +rdcstr DoStringise(const VkSubpassDescriptionFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSubpassDescriptionFlagBits); { @@ -2155,7 +2155,7 @@ std::string DoStringise(const VkSubpassDescriptionFlagBits &el) } template <> -std::string DoStringise(const VkDescriptorSetLayoutCreateFlagBits &el) +rdcstr DoStringise(const VkDescriptorSetLayoutCreateFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkDescriptorSetLayoutCreateFlagBits); { @@ -2166,7 +2166,7 @@ std::string DoStringise(const VkDescriptorSetLayoutCreateFlagBits &el) } template <> -std::string DoStringise(const VkSwapchainCreateFlagBitsKHR &el) +rdcstr DoStringise(const VkSwapchainCreateFlagBitsKHR &el) { BEGIN_BITFIELD_STRINGISE(VkSwapchainCreateFlagBitsKHR); { @@ -2178,7 +2178,7 @@ std::string DoStringise(const VkSwapchainCreateFlagBitsKHR &el) } template <> -std::string DoStringise(const VkQueueGlobalPriorityEXT &el) +rdcstr DoStringise(const VkQueueGlobalPriorityEXT &el) { BEGIN_ENUM_STRINGISE(VkQueueGlobalPriorityEXT); { @@ -2191,7 +2191,7 @@ std::string DoStringise(const VkQueueGlobalPriorityEXT &el) } template <> -std::string DoStringise(const VkDeviceEventTypeEXT &el) +rdcstr DoStringise(const VkDeviceEventTypeEXT &el) { BEGIN_ENUM_STRINGISE(VkDeviceEventTypeEXT); { @@ -2201,7 +2201,7 @@ std::string DoStringise(const VkDeviceEventTypeEXT &el) } template <> -std::string DoStringise(const VkValidationCheckEXT &el) +rdcstr DoStringise(const VkValidationCheckEXT &el) { BEGIN_ENUM_STRINGISE(VkValidationCheckEXT); { @@ -2212,7 +2212,7 @@ std::string DoStringise(const VkValidationCheckEXT &el) } template <> -std::string DoStringise(const VkValidationFeatureEnableEXT &el) +rdcstr DoStringise(const VkValidationFeatureEnableEXT &el) { BEGIN_ENUM_STRINGISE(VkValidationFeatureEnableEXT); { @@ -2223,7 +2223,7 @@ std::string DoStringise(const VkValidationFeatureEnableEXT &el) } template <> -std::string DoStringise(const VkValidationFeatureDisableEXT &el) +rdcstr DoStringise(const VkValidationFeatureDisableEXT &el) { BEGIN_ENUM_STRINGISE(VkValidationFeatureDisableEXT); { @@ -2239,7 +2239,7 @@ std::string DoStringise(const VkValidationFeatureDisableEXT &el) } template <> -std::string DoStringise(const VkDriverIdKHR &el) +rdcstr DoStringise(const VkDriverIdKHR &el) { BEGIN_ENUM_STRINGISE(VkDriverIdKHR); { @@ -2259,7 +2259,7 @@ std::string DoStringise(const VkDriverIdKHR &el) } template <> -std::string DoStringise(const VkDisplayPowerStateEXT &el) +rdcstr DoStringise(const VkDisplayPowerStateEXT &el) { BEGIN_ENUM_STRINGISE(VkDisplayPowerStateEXT); { @@ -2271,7 +2271,7 @@ std::string DoStringise(const VkDisplayPowerStateEXT &el) } template <> -std::string DoStringise(const VkDisplayEventTypeEXT &el) +rdcstr DoStringise(const VkDisplayEventTypeEXT &el) { BEGIN_ENUM_STRINGISE(VkDisplayEventTypeEXT); { @@ -2281,7 +2281,7 @@ std::string DoStringise(const VkDisplayEventTypeEXT &el) } template <> -std::string DoStringise(const VkDiscardRectangleModeEXT &el) +rdcstr DoStringise(const VkDiscardRectangleModeEXT &el) { BEGIN_ENUM_STRINGISE(VkDiscardRectangleModeEXT); { @@ -2292,7 +2292,7 @@ std::string DoStringise(const VkDiscardRectangleModeEXT &el) } template <> -std::string DoStringise(const VkPointClippingBehavior &el) +rdcstr DoStringise(const VkPointClippingBehavior &el) { BEGIN_ENUM_STRINGISE(VkPointClippingBehavior); { @@ -2303,7 +2303,7 @@ std::string DoStringise(const VkPointClippingBehavior &el) } template <> -std::string DoStringise(const VkSemaphoreImportFlagBits &el) +rdcstr DoStringise(const VkSemaphoreImportFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSemaphoreImportFlagBits); { @@ -2313,7 +2313,7 @@ std::string DoStringise(const VkSemaphoreImportFlagBits &el) } template <> -std::string DoStringise(const VkFenceImportFlagBits &el) +rdcstr DoStringise(const VkFenceImportFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkFenceImportFlagBits); { @@ -2323,7 +2323,7 @@ std::string DoStringise(const VkFenceImportFlagBits &el) } template <> -std::string DoStringise(const VkExternalSemaphoreFeatureFlagBits &el) +rdcstr DoStringise(const VkExternalSemaphoreFeatureFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkExternalSemaphoreFeatureFlagBits); { @@ -2334,7 +2334,7 @@ std::string DoStringise(const VkExternalSemaphoreFeatureFlagBits &el) } template <> -std::string DoStringise(const VkExternalFenceFeatureFlagBits &el) +rdcstr DoStringise(const VkExternalFenceFeatureFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkExternalFenceFeatureFlagBits); { @@ -2345,7 +2345,7 @@ std::string DoStringise(const VkExternalFenceFeatureFlagBits &el) } template <> -std::string DoStringise(const VkSparseImageFormatFlagBits &el) +rdcstr DoStringise(const VkSparseImageFormatFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSparseImageFormatFlagBits); { @@ -2357,7 +2357,7 @@ std::string DoStringise(const VkSparseImageFormatFlagBits &el) } template <> -std::string DoStringise(const VkFormatFeatureFlagBits &el) +rdcstr DoStringise(const VkFormatFeatureFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkFormatFeatureFlagBits); { @@ -2394,7 +2394,7 @@ std::string DoStringise(const VkFormatFeatureFlagBits &el) } template <> -std::string DoStringise(const VkExternalMemoryFeatureFlagBits &el) +rdcstr DoStringise(const VkExternalMemoryFeatureFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkExternalMemoryFeatureFlagBits); { @@ -2406,7 +2406,7 @@ std::string DoStringise(const VkExternalMemoryFeatureFlagBits &el) } template <> -std::string DoStringise(const VkDisplayPlaneAlphaFlagBitsKHR &el) +rdcstr DoStringise(const VkDisplayPlaneAlphaFlagBitsKHR &el) { BEGIN_BITFIELD_STRINGISE(VkDisplayPlaneAlphaFlagBitsKHR); { @@ -2419,7 +2419,7 @@ std::string DoStringise(const VkDisplayPlaneAlphaFlagBitsKHR &el) } template <> -std::string DoStringise(const VkSubgroupFeatureFlagBits &el) +rdcstr DoStringise(const VkSubgroupFeatureFlagBits &el) { BEGIN_BITFIELD_STRINGISE(VkSubgroupFeatureFlagBits); { @@ -2437,7 +2437,7 @@ std::string DoStringise(const VkSubgroupFeatureFlagBits &el) } template <> -std::string DoStringise(const VkPipelineCreationFeedbackFlagBitsEXT &el) +rdcstr DoStringise(const VkPipelineCreationFeedbackFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkPipelineCreationFeedbackFlagBitsEXT); { @@ -2449,7 +2449,7 @@ std::string DoStringise(const VkPipelineCreationFeedbackFlagBitsEXT &el) } template <> -std::string DoStringise(const VkDescriptorBindingFlagBitsEXT &el) +rdcstr DoStringise(const VkDescriptorBindingFlagBitsEXT &el) { BEGIN_BITFIELD_STRINGISE(VkDescriptorBindingFlagBitsEXT); { @@ -2462,14 +2462,14 @@ std::string DoStringise(const VkDescriptorBindingFlagBitsEXT &el) } template <> -std::string DoStringise(const VkExtent3D &el) +rdcstr DoStringise(const VkExtent3D &el) { return StringFormat::Fmt("VkExtent3D(%u, %u, %u)", el.width, el.height, el.depth); } #if ENABLED(RDOC_WIN32) template <> -std::string DoStringise(const VkFullScreenExclusiveEXT &el) +rdcstr DoStringise(const VkFullScreenExclusiveEXT &el) { BEGIN_ENUM_STRINGISE(VkFullScreenExclusiveEXT); { diff --git a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp index 50f2c1aaf..a6b64e0cc 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp @@ -368,7 +368,7 @@ bool WrappedVulkan::Serialise_vkCreateCommandPool(SerialiserType &ser, VkDevice SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(CmdPool, GetResID(*pCmdPool)).TypedAs("VkCommandPool"); + SERIALISE_ELEMENT_LOCAL(CmdPool, GetResID(*pCmdPool)).TypedAs("VkCommandPool"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -458,7 +458,7 @@ bool WrappedVulkan::Serialise_vkAllocateCommandBuffers(SerialiserType &ser, VkDe { SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(AllocateInfo, *pAllocateInfo); - SERIALISE_ELEMENT_LOCAL(CommandBuffer, GetResID(*pCommandBuffers)).TypedAs("VkCommandBuffer"); + SERIALISE_ELEMENT_LOCAL(CommandBuffer, GetResID(*pCommandBuffers)).TypedAs("VkCommandBuffer"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -602,7 +602,7 @@ bool WrappedVulkan::Serialise_vkBeginCommandBuffer(SerialiserType &ser, VkComman AllocateInfo = record->cmdInfo->allocInfo; } - SERIALISE_ELEMENT_LOCAL(CommandBuffer, GetResID(commandBuffer)).TypedAs("VkCommandBuffer"); + SERIALISE_ELEMENT_LOCAL(CommandBuffer, GetResID(commandBuffer)).TypedAs("VkCommandBuffer"_lit); SERIALISE_ELEMENT_LOCAL(BeginInfo, *pBeginInfo); SERIALISE_ELEMENT(BakedCommandBuffer); SERIALISE_ELEMENT(device); @@ -914,7 +914,7 @@ bool WrappedVulkan::Serialise_vkEndCommandBuffer(SerialiserType &ser, VkCommandB BakedCommandBuffer = record->bakedCommands->GetResourceID(); } - SERIALISE_ELEMENT_LOCAL(CommandBuffer, GetResID(commandBuffer)).TypedAs("VkCommandBuffer"); + SERIALISE_ELEMENT_LOCAL(CommandBuffer, GetResID(commandBuffer)).TypedAs("VkCommandBuffer"_lit); SERIALISE_ELEMENT(BakedCommandBuffer); SERIALISE_CHECK_READ_ERRORS(); @@ -2429,7 +2429,7 @@ bool WrappedVulkan::Serialise_vkCmdPushConstants(SerialiserType &ser, VkCommandB { SERIALISE_ELEMENT(commandBuffer); SERIALISE_ELEMENT(layout); - SERIALISE_ELEMENT_TYPED(VkShaderStageFlagBits, stageFlags).TypedAs("VkShaderStageFlags"); + SERIALISE_ELEMENT_TYPED(VkShaderStageFlagBits, stageFlags).TypedAs("VkShaderStageFlags"_lit); SERIALISE_ELEMENT(start); SERIALISE_ELEMENT(length); SERIALISE_ELEMENT_ARRAY(values, length); @@ -2505,9 +2505,11 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier( uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier *pImageMemoryBarriers) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, srcStageMask).TypedAs("VkPipelineStageFlags"); - SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, destStageMask).TypedAs("VkPipelineStageFlags"); - SERIALISE_ELEMENT_TYPED(VkDependencyFlagBits, dependencyFlags).TypedAs("VkDependencyFlags"); + SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, srcStageMask) + .TypedAs("VkPipelineStageFlags"_lit); + SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, destStageMask) + .TypedAs("VkPipelineStageFlags"_lit); + SERIALISE_ELEMENT_TYPED(VkDependencyFlagBits, dependencyFlags).TypedAs("VkDependencyFlags"_lit); SERIALISE_ELEMENT(memoryBarrierCount); SERIALISE_ELEMENT_ARRAY(pMemoryBarriers, memoryBarrierCount); SERIALISE_ELEMENT(bufferMemoryBarrierCount); @@ -2728,7 +2730,7 @@ bool WrappedVulkan::Serialise_vkCmdCopyQueryPoolResults( SERIALISE_ELEMENT(destBuffer); SERIALISE_ELEMENT(destOffset); SERIALISE_ELEMENT(destStride); - SERIALISE_ELEMENT_TYPED(VkQueryResultFlagBits, flags).TypedAs("VkQueryResultFlags"); + SERIALISE_ELEMENT_TYPED(VkQueryResultFlagBits, flags).TypedAs("VkQueryResultFlags"_lit); Serialise_DebugMessages(ser); @@ -2801,7 +2803,7 @@ bool WrappedVulkan::Serialise_vkCmdBeginQuery(SerialiserType &ser, VkCommandBuff SERIALISE_ELEMENT(commandBuffer); SERIALISE_ELEMENT(queryPool); SERIALISE_ELEMENT(query); - SERIALISE_ELEMENT_TYPED(VkQueryControlFlagBits, flags).TypedAs("VkQueryControlFlags"); + SERIALISE_ELEMENT_TYPED(VkQueryControlFlagBits, flags).TypedAs("VkQueryControlFlags"_lit); Serialise_DebugMessages(ser); @@ -3273,7 +3275,7 @@ bool WrappedVulkan::Serialise_vkCmdDebugMarkerBeginEXT(SerialiserType &ser, const VkDebugMarkerMarkerInfoEXT *pMarker) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_LOCAL(Marker, *pMarker).Named("pMarker"); + SERIALISE_ELEMENT_LOCAL(Marker, *pMarker).Named("pMarker"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -3425,7 +3427,7 @@ bool WrappedVulkan::Serialise_vkCmdDebugMarkerInsertEXT(SerialiserType &ser, const VkDebugMarkerMarkerInfoEXT *pMarker) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_LOCAL(Marker, *pMarker).Named("pMarker"); + SERIALISE_ELEMENT_LOCAL(Marker, *pMarker).Named("pMarker"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -3865,7 +3867,7 @@ bool WrappedVulkan::Serialise_vkCmdPushDescriptorSetWithTemplateKHR( GetRecord(descriptorUpdateTemplate)->descTemplateInfo->Apply(pData, apply); } - SERIALISE_ELEMENT(apply.writes).Named("Decoded Writes"); + SERIALISE_ELEMENT(apply.writes).Named("Decoded Writes"_lit); Serialise_DebugMessages(ser); @@ -4689,7 +4691,7 @@ bool WrappedVulkan::Serialise_vkCmdBeginQueryIndexedEXT(SerialiserType &ser, SERIALISE_ELEMENT(commandBuffer); SERIALISE_ELEMENT(queryPool); SERIALISE_ELEMENT(query); - SERIALISE_ELEMENT_TYPED(VkQueryControlFlagBits, flags).TypedAs("VkQueryControlFlags"); + SERIALISE_ELEMENT_TYPED(VkQueryControlFlagBits, flags).TypedAs("VkQueryControlFlags"_lit); SERIALISE_ELEMENT(index); Serialise_DebugMessages(ser); @@ -4805,7 +4807,7 @@ bool WrappedVulkan::Serialise_vkCmdBeginConditionalRenderingEXT( { SERIALISE_ELEMENT(commandBuffer); SERIALISE_ELEMENT_LOCAL(BeginInfo, *pConditionalRenderingBegin) - .Named("pConditionalRenderingBegin"); + .Named("pConditionalRenderingBegin"_lit); Serialise_DebugMessages(ser); diff --git a/renderdoc/driver/vulkan/wrappers/vk_descriptor_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_descriptor_funcs.cpp index 2fd0acf8f..eee6b80bf 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_descriptor_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_descriptor_funcs.cpp @@ -176,7 +176,8 @@ bool WrappedVulkan::Serialise_vkCreateDescriptorPool(SerialiserType &ser, VkDevi SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(DescriptorPool, GetResID(*pDescriptorPool)).TypedAs("VkDescriptorPool"); + SERIALISE_ELEMENT_LOCAL(DescriptorPool, GetResID(*pDescriptorPool)) + .TypedAs("VkDescriptorPool"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -252,7 +253,7 @@ bool WrappedVulkan::Serialise_vkCreateDescriptorSetLayout( SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(SetLayout, GetResID(*pSetLayout)).TypedAs("VkDescriptorSetLayout"); + SERIALISE_ELEMENT_LOCAL(SetLayout, GetResID(*pSetLayout)).TypedAs("VkDescriptorSetLayout"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -378,7 +379,7 @@ bool WrappedVulkan::Serialise_vkAllocateDescriptorSets(SerialiserType &ser, VkDe { SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(AllocateInfo, *pAllocateInfo); - SERIALISE_ELEMENT_LOCAL(DescriptorSet, GetResID(*pDescriptorSets)).TypedAs("VkDescriptorSet"); + SERIALISE_ELEMENT_LOCAL(DescriptorSet, GetResID(*pDescriptorSets)).TypedAs("VkDescriptorSet"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1125,7 +1126,7 @@ bool WrappedVulkan::Serialise_vkCreateDescriptorUpdateTemplate( SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); SERIALISE_ELEMENT_LOCAL(DescriptorUpdateTemplate, GetResID(*pDescriptorUpdateTemplate)) - .TypedAs("VkDescriptorUpdateTemplate"); + .TypedAs("VkDescriptorUpdateTemplate"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1224,7 +1225,7 @@ bool WrappedVulkan::Serialise_vkUpdateDescriptorSetWithTemplate( GetRecord(descriptorUpdateTemplate)->descTemplateInfo->Apply(pData, apply); } - SERIALISE_ELEMENT(apply.writes).Named("Decoded Writes"); + SERIALISE_ELEMENT(apply.writes).Named("Decoded Writes"_lit); Serialise_DebugMessages(ser); diff --git a/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp index 029758d23..98d6fd456 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp @@ -178,7 +178,7 @@ ReplayStatus WrappedVulkan::Initialise(VkInitParams ¶ms, uint64_t sectionVer StripUnwantedLayers(params.Layers); StripUnwantedExtensions(params.Extensions); -#if ENABLED(FORCE_VALIDATION_LAYERS) && DISABLED(RDOC_ANDROID) +#if 1 // ENABLED(FORCE_VALIDATION_LAYERS) && DISABLED(RDOC_ANDROID) params.Layers.push_back("VK_LAYER_LUNARG_standard_validation"); #endif @@ -859,7 +859,8 @@ bool WrappedVulkan::Serialise_vkEnumeratePhysicalDevices(SerialiserType &ser, Vk { SERIALISE_ELEMENT(instance); SERIALISE_ELEMENT_LOCAL(PhysicalDeviceIndex, *pPhysicalDeviceCount); - SERIALISE_ELEMENT_LOCAL(PhysicalDevice, GetResID(*pPhysicalDevices)).TypedAs("VkPhysicalDevice"); + SERIALISE_ELEMENT_LOCAL(PhysicalDevice, GetResID(*pPhysicalDevices)) + .TypedAs("VkPhysicalDevice"_lit); uint32_t memIdxMap[VK_MAX_MEMORY_TYPES] = {0}; // not used at the moment but useful for reference and might be used @@ -1152,7 +1153,7 @@ bool WrappedVulkan::Serialise_vkCreateDevice(SerialiserType &ser, VkPhysicalDevi SERIALISE_ELEMENT(physicalDevice); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Device, GetResID(*pDevice)).TypedAs("VkDevice"); + SERIALISE_ELEMENT_LOCAL(Device, GetResID(*pDevice)).TypedAs("VkDevice"_lit); if(ser.VersionLess(0xD)) { diff --git a/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp index 604e2a619..4ed03b241 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp @@ -626,9 +626,9 @@ bool WrappedVulkan::Serialise_vkCmdDrawIndirect(SerialiserType &ser, VkCommandBu { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", 0U); - structuriser.Serialise("offset", offset); - structuriser.Serialise("command", VkDrawIndirectCommand()); + structuriser.Serialise("drawIndex"_lit, 0U); + structuriser.Serialise("offset"_lit, offset); + structuriser.Serialise("command"_lit, VkDrawIndirectCommand()); } m_StructuredFile->chunks.insert(m_StructuredFile->chunks.size() - 1, fakeChunk); @@ -692,9 +692,9 @@ bool WrappedVulkan::Serialise_vkCmdDrawIndirect(SerialiserType &ser, VkCommandBu { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", 0U); - structuriser.Serialise("offset", offset); - structuriser.Serialise("command", VkDrawIndirectCommand()); + structuriser.Serialise("drawIndex"_lit, 0U); + structuriser.Serialise("offset"_lit, offset); + structuriser.Serialise("command"_lit, VkDrawIndirectCommand()); } m_StructuredFile->chunks.push_back(fakeChunk); @@ -1004,9 +1004,9 @@ bool WrappedVulkan::Serialise_vkCmdDrawIndexedIndirect(SerialiserType &ser, { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", 0U); - structuriser.Serialise("offset", offset); - structuriser.Serialise("command", VkDrawIndexedIndirectCommand()); + structuriser.Serialise("drawIndex"_lit, 0U); + structuriser.Serialise("offset"_lit, offset); + structuriser.Serialise("command"_lit, VkDrawIndexedIndirectCommand()); } m_StructuredFile->chunks.insert(m_StructuredFile->chunks.size() - 1, fakeChunk); @@ -1073,9 +1073,9 @@ bool WrappedVulkan::Serialise_vkCmdDrawIndexedIndirect(SerialiserType &ser, { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", 0U); - structuriser.Serialise("offset", offset); - structuriser.Serialise("command", VkDrawIndexedIndirectCommand()); + structuriser.Serialise("drawIndex"_lit, 0U); + structuriser.Serialise("offset"_lit, offset); + structuriser.Serialise("command"_lit, VkDrawIndexedIndirectCommand()); } m_StructuredFile->chunks.push_back(fakeChunk); @@ -2712,9 +2712,9 @@ bool WrappedVulkan::Serialise_vkCmdDrawIndirectCountKHR( { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", 0U); - structuriser.Serialise("offset", offset); - structuriser.Serialise("command", VkDrawIndirectCommand()); + structuriser.Serialise("drawIndex"_lit, 0U); + structuriser.Serialise("offset"_lit, offset); + structuriser.Serialise("command"_lit, VkDrawIndirectCommand()); } m_StructuredFile->chunks.push_back(fakeChunk); @@ -3027,9 +3027,9 @@ bool WrappedVulkan::Serialise_vkCmdDrawIndexedIndirectCountKHR( { StructuredSerialiser structuriser(fakeChunk, ser.GetChunkLookup()); - structuriser.Serialise("drawIndex", 0U); - structuriser.Serialise("offset", offset); - structuriser.Serialise("command", VkDrawIndexedIndirectCommand()); + structuriser.Serialise("drawIndex"_lit, 0U); + structuriser.Serialise("offset"_lit, offset); + structuriser.Serialise("command"_lit, VkDrawIndexedIndirectCommand()); } m_StructuredFile->chunks.push_back(fakeChunk); diff --git a/renderdoc/driver/vulkan/wrappers/vk_dynamic_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_dynamic_funcs.cpp index df0a73d44..6818b162c 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_dynamic_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_dynamic_funcs.cpp @@ -410,7 +410,7 @@ bool WrappedVulkan::Serialise_vkCmdSetStencilCompareMask(SerialiserType &ser, uint32_t compareMask) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_TYPED(VkStencilFaceFlagBits, faceMask).TypedAs("VkStencilFaceFlags"); + SERIALISE_ELEMENT_TYPED(VkStencilFaceFlagBits, faceMask).TypedAs("VkStencilFaceFlags"_lit); SERIALISE_ELEMENT(compareMask); Serialise_DebugMessages(ser); @@ -476,7 +476,7 @@ bool WrappedVulkan::Serialise_vkCmdSetStencilWriteMask(SerialiserType &ser, uint32_t writeMask) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_TYPED(VkStencilFaceFlagBits, faceMask).TypedAs("VkStencilFaceFlags"); + SERIALISE_ELEMENT_TYPED(VkStencilFaceFlagBits, faceMask).TypedAs("VkStencilFaceFlags"_lit); SERIALISE_ELEMENT(writeMask); Serialise_DebugMessages(ser); @@ -542,7 +542,7 @@ bool WrappedVulkan::Serialise_vkCmdSetStencilReference(SerialiserType &ser, uint32_t reference) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_TYPED(VkStencilFaceFlagBits, faceMask).TypedAs("VkStencilFaceFlags"); + SERIALISE_ELEMENT_TYPED(VkStencilFaceFlagBits, faceMask).TypedAs("VkStencilFaceFlags"_lit); SERIALISE_ELEMENT(reference); Serialise_DebugMessages(ser); @@ -607,7 +607,7 @@ bool WrappedVulkan::Serialise_vkCmdSetSampleLocationsEXT( const VkSampleLocationsInfoEXT *pSampleLocationsInfo) { SERIALISE_ELEMENT(commandBuffer); - SERIALISE_ELEMENT_LOCAL(sampleInfo, *pSampleLocationsInfo).Named("pSampleLocationsInfo"); + SERIALISE_ELEMENT_LOCAL(sampleInfo, *pSampleLocationsInfo).Named("pSampleLocationsInfo"_lit); Serialise_DebugMessages(ser); diff --git a/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp index 88c69ec46..ef48f5546 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp @@ -420,7 +420,7 @@ bool WrappedVulkan::Serialise_vkCreateSampler(SerialiserType &ser, VkDevice devi SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Sampler, GetResID(*pSampler)).TypedAs("VkSampler"); + SERIALISE_ELEMENT_LOCAL(Sampler, GetResID(*pSampler)).TypedAs("VkSampler"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -544,7 +544,7 @@ bool WrappedVulkan::Serialise_vkCreateFramebuffer(SerialiserType &ser, VkDevice SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Framebuffer, GetResID(*pFramebuffer)).TypedAs("VkFramebuffer"); + SERIALISE_ELEMENT_LOCAL(Framebuffer, GetResID(*pFramebuffer)).TypedAs("VkFramebuffer"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -728,7 +728,7 @@ bool WrappedVulkan::Serialise_vkCreateRenderPass(SerialiserType &ser, VkDevice d SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(RenderPass, GetResID(*pRenderPass)).TypedAs("VkRenderPass"); + SERIALISE_ELEMENT_LOCAL(RenderPass, GetResID(*pRenderPass)).TypedAs("VkRenderPass"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -958,7 +958,7 @@ bool WrappedVulkan::Serialise_vkCreateRenderPass2KHR(SerialiserType &ser, VkDevi SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(RenderPass, GetResID(*pRenderPass)).TypedAs("VkRenderPass"); + SERIALISE_ELEMENT_LOCAL(RenderPass, GetResID(*pRenderPass)).TypedAs("VkRenderPass"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1173,7 +1173,7 @@ bool WrappedVulkan::Serialise_vkCreateQueryPool(SerialiserType &ser, VkDevice de SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(QueryPool, GetResID(*pQueryPool)).TypedAs("VkQueryPool"); + SERIALISE_ELEMENT_LOCAL(QueryPool, GetResID(*pQueryPool)).TypedAs("VkQueryPool"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1338,7 +1338,7 @@ bool WrappedVulkan::Serialise_vkCreateSamplerYcbcrConversion( SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); SERIALISE_ELEMENT_LOCAL(ycbcrConversion, GetResID(*pYcbcrConversion)) - .TypedAs("VkSamplerYcbcrConversion"); + .TypedAs("VkSamplerYcbcrConversion"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp index 08effd7c5..a1cdd60f2 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp @@ -33,7 +33,7 @@ bool WrappedVulkan::Serialise_vkGetDeviceQueue(SerialiserType &ser, VkDevice dev SERIALISE_ELEMENT(device); SERIALISE_ELEMENT(queueFamilyIndex); SERIALISE_ELEMENT(queueIndex); - SERIALISE_ELEMENT_LOCAL(Queue, GetResID(*pQueue)).TypedAs("VkQueue"); + SERIALISE_ELEMENT_LOCAL(Queue, GetResID(*pQueue)).TypedAs("VkQueue"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1495,7 +1495,7 @@ bool WrappedVulkan::Serialise_vkGetDeviceQueue2(SerialiserType &ser, VkDevice de { SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(QueueInfo, *pQueueInfo); - SERIALISE_ELEMENT_LOCAL(Queue, GetResID(*pQueue)).TypedAs("VkQueue"); + SERIALISE_ELEMENT_LOCAL(Queue, GetResID(*pQueue)).TypedAs("VkQueue"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/vulkan/wrappers/vk_resource_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_resource_funcs.cpp index df5dd3ba3..b5bfa6e97 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_resource_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_resource_funcs.cpp @@ -253,7 +253,7 @@ bool WrappedVulkan::Serialise_vkAllocateMemory(SerialiserType &ser, VkDevice dev SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(AllocateInfo, *pAllocateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Memory, GetResID(*pMemory)).TypedAs("VkDeviceMemory"); + SERIALISE_ELEMENT_LOCAL(Memory, GetResID(*pMemory)).TypedAs("VkDeviceMemory"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -605,7 +605,7 @@ bool WrappedVulkan::Serialise_vkUnmapMemory(SerialiserType &ser, VkDevice device // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("MapData", MapData, MapSize, SerialiserFlags::NoFlags); + ser.Serialise("MapData"_lit, MapData, MapSize, SerialiserFlags::NoFlags); if(IsReplayingAndReading() && MapData && memory != VK_NULL_HANDLE) ObjDisp(device)->UnmapMemory(Unwrap(device), Unwrap(memory)); @@ -731,7 +731,7 @@ bool WrappedVulkan::Serialise_vkFlushMappedMemoryRanges(SerialiserType &ser, VkD // not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise // directly into upload memory - ser.Serialise("MappedData", MappedData, memRangeSize, SerialiserFlags::NoFlags); + ser.Serialise("MappedData"_lit, MappedData, memRangeSize, SerialiserFlags::NoFlags); if(IsReplayingAndReading() && MappedData && MemRange.memory != VK_NULL_HANDLE) ObjDisp(device)->UnmapMemory(Unwrap(device), Unwrap(MemRange.memory)); @@ -1016,7 +1016,7 @@ bool WrappedVulkan::Serialise_vkCreateBuffer(SerialiserType &ser, VkDevice devic SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Buffer, GetResID(*pBuffer)).TypedAs("VkBuffer"); + SERIALISE_ELEMENT_LOCAL(Buffer, GetResID(*pBuffer)).TypedAs("VkBuffer"_lit); // unused at the moment, just for user information SERIALISE_ELEMENT(memoryRequirements); @@ -1236,7 +1236,7 @@ bool WrappedVulkan::Serialise_vkCreateBufferView(SerialiserType &ser, VkDevice d SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(View, GetResID(*pView)).TypedAs("VkBufferView"); + SERIALISE_ELEMENT_LOCAL(View, GetResID(*pView)).TypedAs("VkBufferView"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -1353,7 +1353,7 @@ bool WrappedVulkan::Serialise_vkCreateImage(SerialiserType &ser, VkDevice device SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Image, GetResID(*pImage)).TypedAs("VkImage"); + SERIALISE_ELEMENT_LOCAL(Image, GetResID(*pImage)).TypedAs("VkImage"_lit); // unused at the moment, just for user information SERIALISE_ELEMENT(memoryRequirements); @@ -1787,7 +1787,7 @@ bool WrappedVulkan::Serialise_vkCreateImageView(SerialiserType &ser, VkDevice de SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(View, GetResID(*pView)).TypedAs("VkImageView"); + SERIALISE_ELEMENT_LOCAL(View, GetResID(*pView)).TypedAs("VkImageView"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/vulkan/wrappers/vk_shader_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_shader_funcs.cpp index bbbe333bd..4580e8483 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_shader_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_shader_funcs.cpp @@ -102,7 +102,8 @@ bool WrappedVulkan::Serialise_vkCreatePipelineLayout(SerialiserType &ser, VkDevi SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(PipelineLayout, GetResID(*pPipelineLayout)).TypedAs("VkPipelineLayout"); + SERIALISE_ELEMENT_LOCAL(PipelineLayout, GetResID(*pPipelineLayout)) + .TypedAs("VkPipelineLayout"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -212,7 +213,7 @@ bool WrappedVulkan::Serialise_vkCreateShaderModule(SerialiserType &ser, VkDevice SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(ShaderModule, GetResID(*pShaderModule)).TypedAs("VkShaderModule"); + SERIALISE_ELEMENT_LOCAL(ShaderModule, GetResID(*pShaderModule)).TypedAs("VkShaderModule"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -316,7 +317,7 @@ bool WrappedVulkan::Serialise_vkCreatePipelineCache(SerialiserType &ser, VkDevic SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(PipelineCache, GetResID(*pPipelineCache)).TypedAs("VkPipelineCache"); + SERIALISE_ELEMENT_LOCAL(PipelineCache, GetResID(*pPipelineCache)).TypedAs("VkPipelineCache"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -406,7 +407,7 @@ bool WrappedVulkan::Serialise_vkCreateGraphicsPipelines( SERIALISE_ELEMENT(count); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfos); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Pipeline, GetResID(*pPipelines)).TypedAs("VkPipeline"); + SERIALISE_ELEMENT_LOCAL(Pipeline, GetResID(*pPipelines)).TypedAs("VkPipeline"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -600,7 +601,7 @@ bool WrappedVulkan::Serialise_vkCreateComputePipelines(SerialiserType &ser, VkDe SERIALISE_ELEMENT(count); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfos); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Pipeline, GetResID(*pPipelines)).TypedAs("VkPipeline"); + SERIALISE_ELEMENT_LOCAL(Pipeline, GetResID(*pPipelines)).TypedAs("VkPipeline"_lit); SERIALISE_CHECK_READ_ERRORS(); diff --git a/renderdoc/driver/vulkan/wrappers/vk_sync_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_sync_funcs.cpp index 90554de89..627fcba0a 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_sync_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_sync_funcs.cpp @@ -104,7 +104,7 @@ bool WrappedVulkan::Serialise_vkCreateFence(SerialiserType &ser, VkDevice device SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Fence, GetResID(*pFence)).TypedAs("VkFence"); + SERIALISE_ELEMENT_LOCAL(Fence, GetResID(*pFence)).TypedAs("VkFence"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -322,7 +322,7 @@ bool WrappedVulkan::Serialise_vkCreateEvent(SerialiserType &ser, VkDevice device SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Event, GetResID(*pEvent)).TypedAs("VkEvent"); + SERIALISE_ELEMENT_LOCAL(Event, GetResID(*pEvent)).TypedAs("VkEvent"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -512,7 +512,7 @@ bool WrappedVulkan::Serialise_vkCreateSemaphore(SerialiserType &ser, VkDevice de SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(Semaphore, GetResID(*pSemaphore)).TypedAs("VkSemaphore"); + SERIALISE_ELEMENT_LOCAL(Semaphore, GetResID(*pSemaphore)).TypedAs("VkSemaphore"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -615,7 +615,7 @@ bool WrappedVulkan::Serialise_vkCmdSetEvent(SerialiserType &ser, VkCommandBuffer { SERIALISE_ELEMENT(commandBuffer); SERIALISE_ELEMENT(event); - SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, stageMask).TypedAs("VkPipelineStageFlags"); + SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, stageMask).TypedAs("VkPipelineStageFlags"_lit); Serialise_DebugMessages(ser); @@ -670,7 +670,7 @@ bool WrappedVulkan::Serialise_vkCmdResetEvent(SerialiserType &ser, VkCommandBuff { SERIALISE_ELEMENT(commandBuffer); SERIALISE_ELEMENT(event); - SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, stageMask).TypedAs("VkPipelineStageFlags"); + SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, stageMask).TypedAs("VkPipelineStageFlags"_lit); Serialise_DebugMessages(ser); @@ -735,8 +735,10 @@ bool WrappedVulkan::Serialise_vkCmdWaitEvents( SERIALISE_ELEMENT(eventCount); SERIALISE_ELEMENT_ARRAY(pEvents, eventCount); - SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, srcStageMask).TypedAs("VkPipelineStageFlags"); - SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, dstStageMask).TypedAs("VkPipelineStageFlags"); + SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, srcStageMask) + .TypedAs("VkPipelineStageFlags"_lit); + SERIALISE_ELEMENT_TYPED(VkPipelineStageFlagBits, dstStageMask) + .TypedAs("VkPipelineStageFlags"_lit); SERIALISE_ELEMENT(memoryBarrierCount); SERIALISE_ELEMENT_ARRAY(pMemoryBarriers, memoryBarrierCount); diff --git a/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp index a6d2b08f4..ba962dbc4 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp @@ -220,9 +220,9 @@ bool WrappedVulkan::Serialise_vkGetSwapchainImagesKHR(SerialiserType &ser, VkDev VkImage *pSwapchainImages) { SERIALISE_ELEMENT(device); - SERIALISE_ELEMENT_LOCAL(Swapchain, GetResID(swapchain)).TypedAs("VkSwapchainKHR"); + SERIALISE_ELEMENT_LOCAL(Swapchain, GetResID(swapchain)).TypedAs("VkSwapchainKHR"_lit); SERIALISE_ELEMENT_LOCAL(SwapchainImageIndex, *pCount); - SERIALISE_ELEMENT_LOCAL(SwapchainImage, GetResID(*pSwapchainImages)).TypedAs("VkImage"); + SERIALISE_ELEMENT_LOCAL(SwapchainImage, GetResID(*pSwapchainImages)).TypedAs("VkImage"_lit); SERIALISE_CHECK_READ_ERRORS(); @@ -328,7 +328,7 @@ bool WrappedVulkan::Serialise_vkCreateSwapchainKHR(SerialiserType &ser, VkDevice SERIALISE_ELEMENT(device); SERIALISE_ELEMENT_LOCAL(CreateInfo, *pCreateInfo); SERIALISE_ELEMENT_OPT(pAllocator); - SERIALISE_ELEMENT_LOCAL(SwapChain, GetResID(*pSwapChain)).TypedAs("VkSwapchainKHR"); + SERIALISE_ELEMENT_LOCAL(SwapChain, GetResID(*pSwapChain)).TypedAs("VkSwapchainKHR"_lit); uint32_t NumImages = 0; diff --git a/renderdoc/replay/replay_driver.cpp b/renderdoc/replay/replay_driver.cpp index a33a8ca69..abb78de7b 100644 --- a/renderdoc/replay/replay_driver.cpp +++ b/renderdoc/replay/replay_driver.cpp @@ -27,7 +27,7 @@ #include "serialise/serialiser.h" template <> -std::string DoStringise(const RemapTexture &el) +rdcstr DoStringise(const RemapTexture &el) { BEGIN_ENUM_STRINGISE(RemapTexture); { diff --git a/renderdoc/serialise/codecs/xml_codec.cpp b/renderdoc/serialise/codecs/xml_codec.cpp index eba7faec2..cff23c81e 100644 --- a/renderdoc/serialise/codecs/xml_codec.cpp +++ b/renderdoc/serialise/codecs/xml_codec.cpp @@ -763,7 +763,7 @@ static ReplayStatus XML2Structured(const char *xml, const ThumbTypeAndData &thum chunk->metadata.flags |= SDChunkFlags::OpaqueChunk; - chunk->data.children.push_back(new SDObject("Opaque chunk", "Byte Buffer")); + chunk->data.children.push_back(new SDObject("Opaque chunk"_lit, "Byte Buffer"_lit)); chunk->data.children[0]->type.basetype = SDBasic::Buffer; chunk->data.children[0]->type.byteSize = opaque.attribute("byteLength").as_ullong(); chunk->data.children[0]->data.basic.u = opaque.text().as_ullong(); diff --git a/renderdoc/serialise/serialiser.cpp b/renderdoc/serialise/serialiser.cpp index 5157b0d8e..c030e1398 100644 --- a/renderdoc/serialise/serialiser.cpp +++ b/renderdoc/serialise/serialiser.cpp @@ -144,7 +144,7 @@ void Serialiser::SkipCurrentChunk() SDObject ¤t = *m_StructureStack.back(); current.data.basic.numChildren++; - current.data.children.push_back(new SDObject("Opaque chunk", "Byte Buffer")); + current.data.children.push_back(new SDObject("Opaque chunk"_lit, "Byte Buffer"_lit)); SDObject &obj = *current.data.children.back(); obj.type.basetype = SDBasic::Buffer; @@ -497,7 +497,7 @@ void Serialiser::WriteStructuredFile(const SDFile &file for(size_t o = 0; o < chunk.data.children.size(); o++) { // note, we don't need names because we aren't exporting structured data - ser->Serialise("", chunk.data.children[o]); + ser->Serialise(""_lit, chunk.data.children[o]); } } @@ -521,7 +521,7 @@ void Serialiser::WriteStructuredFile(const SDFile &file } template <> -std::string DoStringise(const SDBasic &el) +rdcstr DoStringise(const SDBasic &el) { BEGIN_ENUM_STRINGISE(SDBasic); { @@ -542,7 +542,7 @@ std::string DoStringise(const SDBasic &el) } template <> -std::string DoStringise(const SDTypeFlags &el) +rdcstr DoStringise(const SDTypeFlags &el) { BEGIN_BITFIELD_STRINGISE(SDTypeFlags); { @@ -557,7 +557,7 @@ std::string DoStringise(const SDTypeFlags &el) } template <> -std::string DoStringise(const SDChunkFlags &el) +rdcstr DoStringise(const SDChunkFlags &el) { BEGIN_BITFIELD_STRINGISE(SDChunkFlags); { @@ -602,7 +602,7 @@ void DoSerialise(SerialiserType &ser, StructuredObjectList &el) // transfer purposes, we don't make a proper array here and instead just manually serialise count // + elements uint64_t count = el.size(); - ser.Serialise("count", count); + ser.Serialise("count"_lit, count); if(ser.IsReading()) el.resize((size_t)count); @@ -613,7 +613,7 @@ void DoSerialise(SerialiserType &ser, StructuredObjectList &el) if(ser.IsReading()) el[c] = new SDObject("", ""); - ser.Serialise("$el", *el[c]); + ser.Serialise("$el"_lit, *el[c]); } } @@ -656,7 +656,7 @@ void DoSerialise(SerialiserType &ser, SDObject *el) if(el->type.flags & SDTypeFlags::Nullable) { bool present = el->type.basetype != SDBasic::Null; - ser.Serialise("", present); + ser.Serialise(""_lit, present); } const SDFile &file = ser.GetStructuredFile(); @@ -666,9 +666,9 @@ void DoSerialise(SerialiserType &ser, SDObject *el) case SDBasic::Chunk: RDCERR("Unexpected chunk inside object!"); break; case SDBasic::Struct: for(size_t o = 0; o < el->data.children.size(); o++) - ser.Serialise("", el->data.children[o]); + ser.Serialise(""_lit, el->data.children[o]); break; - case SDBasic::Array: ser.Serialise("", (rdcarray &)el->data.children); break; + case SDBasic::Array: ser.Serialise(""_lit, (rdcarray &)el->data.children); break; case SDBasic::Null: // nothing to do, we serialised present flag above RDCASSERT(el->type.flags & SDTypeFlags::Nullable); @@ -678,7 +678,7 @@ void DoSerialise(SerialiserType &ser, SDObject *el) size_t bufID = (size_t)el->data.basic.u; byte *buf = file.buffers[bufID]->data(); uint64_t size = file.buffers[bufID]->size(); - ser.Serialise("", buf, size); + ser.Serialise(""_lit, buf, size); break; } case SDBasic::String: @@ -686,42 +686,42 @@ void DoSerialise(SerialiserType &ser, SDObject *el) if(el->type.flags & SDTypeFlags::NullString) { const char *nullstring = NULL; - ser.Serialise("", nullstring); + ser.Serialise(""_lit, nullstring); } else { - ser.Serialise("", el->data.str); + ser.Serialise(""_lit, el->data.str); } break; } case SDBasic::Enum: { uint32_t e = (uint32_t)el->data.basic.u; - ser.Serialise("", e); + ser.Serialise(""_lit, e); break; } - case SDBasic::Boolean: ser.Serialise("", el->data.basic.b); break; - case SDBasic::Character: ser.Serialise("", el->data.basic.c); break; - case SDBasic::Resource: ser.Serialise("", el->data.basic.id); break; + case SDBasic::Boolean: ser.Serialise(""_lit, el->data.basic.b); break; + case SDBasic::Character: ser.Serialise(""_lit, el->data.basic.c); break; + case SDBasic::Resource: ser.Serialise(""_lit, el->data.basic.id); break; case SDBasic::UnsignedInteger: if(el->type.byteSize == 1) { uint8_t u = uint8_t(el->data.basic.u); - ser.Serialise("", u); + ser.Serialise(""_lit, u); } else if(el->type.byteSize == 2) { uint16_t u = uint16_t(el->data.basic.u); - ser.Serialise("", u); + ser.Serialise(""_lit, u); } else if(el->type.byteSize == 4) { uint32_t u = uint32_t(el->data.basic.u); - ser.Serialise("", u); + ser.Serialise(""_lit, u); } else if(el->type.byteSize == 8) { - ser.Serialise("", el->data.basic.u); + ser.Serialise(""_lit, el->data.basic.u); } else { @@ -732,21 +732,21 @@ void DoSerialise(SerialiserType &ser, SDObject *el) if(el->type.byteSize == 1) { int8_t i = int8_t(el->data.basic.i); - ser.Serialise("", i); + ser.Serialise(""_lit, i); } else if(el->type.byteSize == 2) { int16_t i = int16_t(el->data.basic.i); - ser.Serialise("", i); + ser.Serialise(""_lit, i); } else if(el->type.byteSize == 4) { int32_t i = int32_t(el->data.basic.i); - ser.Serialise("", i); + ser.Serialise(""_lit, i); } else if(el->type.byteSize == 8) { - ser.Serialise("", el->data.basic.i); + ser.Serialise(""_lit, el->data.basic.i); } else { @@ -757,11 +757,11 @@ void DoSerialise(SerialiserType &ser, SDObject *el) if(el->type.byteSize == 4) { float f = float(el->data.basic.d); - ser.Serialise("", f); + ser.Serialise(""_lit, f); } else if(el->type.byteSize == 8) { - ser.Serialise("", el->data.basic.d); + ser.Serialise(""_lit, el->data.basic.d); } else { @@ -775,99 +775,99 @@ void DoSerialise(SerialiserType &ser, SDObject *el) // Basic types template <> -std::string DoStringise(const std::string &el) +rdcstr DoStringise(const std::string &el) { return el; } template <> -std::string DoStringise(const rdcstr &el) +rdcstr DoStringise(const rdcstr &el) { return el; } template <> -std::string DoStringise(void *const &el) +rdcstr DoStringise(void *const &el) { return StringFormat::Fmt("%#p", el); } template <> -std::string DoStringise(const int64_t &el) +rdcstr DoStringise(const int64_t &el) { return StringFormat::Fmt("%lld", el); } #if ENABLED(RDOC_SIZET_SEP_TYPE) template <> -std::string DoStringise(const size_t &el) +rdcstr DoStringise(const size_t &el) { return StringFormat::Fmt("%llu", (uint64_t)el); } #endif template <> -std::string DoStringise(const uint64_t &el) +rdcstr DoStringise(const uint64_t &el) { return StringFormat::Fmt("%llu", el); } template <> -std::string DoStringise(const uint32_t &el) +rdcstr DoStringise(const uint32_t &el) { return StringFormat::Fmt("%u", el); } template <> -std::string DoStringise(const char &el) +rdcstr DoStringise(const char &el) { return StringFormat::Fmt("'%c'", el); } template <> -std::string DoStringise(const wchar_t &el) +rdcstr DoStringise(const wchar_t &el) { return StringFormat::Fmt("'%lc'", el); } template <> -std::string DoStringise(const byte &el) +rdcstr DoStringise(const byte &el) { return StringFormat::Fmt("%hhu", el); } template <> -std::string DoStringise(const uint16_t &el) +rdcstr DoStringise(const uint16_t &el) { return StringFormat::Fmt("%hu", el); } template <> -std::string DoStringise(const int32_t &el) +rdcstr DoStringise(const int32_t &el) { return StringFormat::Fmt("%d", el); } template <> -std::string DoStringise(const int16_t &el) +rdcstr DoStringise(const int16_t &el) { return StringFormat::Fmt("%hd", el); } template <> -std::string DoStringise(const float &el) +rdcstr DoStringise(const float &el) { return StringFormat::Fmt("%0.4f", el); } template <> -std::string DoStringise(const double &el) +rdcstr DoStringise(const double &el) { return StringFormat::Fmt("%0.4lf", el); } template <> -std::string DoStringise(const bool &el) +rdcstr DoStringise(const bool &el) { if(el) return "True"; diff --git a/renderdoc/serialise/serialiser.h b/renderdoc/serialise/serialiser.h index 5d580e3e4..00e51d580 100644 --- a/renderdoc/serialise/serialiser.h +++ b/renderdoc/serialise/serialiser.h @@ -190,7 +190,8 @@ public: // serialise an object (either loose, or a structure member). template - Serialiser &Serialise(const char *name, T &el, SerialiserFlags flags = SerialiserFlags::NoFlags) + Serialiser &Serialise(const rdcliteral &name, T &el, + SerialiserFlags flags = SerialiserFlags::NoFlags) { if(ExportStructure()) { @@ -221,7 +222,7 @@ public: } // special function for serialising buffers - Serialiser &Serialise(const char *name, byte *&el, uint64_t byteSize, + Serialiser &Serialise(const rdcliteral &name, byte *&el, uint64_t byteSize, SerialiserFlags flags = SerialiserFlags::NoFlags) { // silently handle NULL buffers @@ -250,7 +251,7 @@ public: SDObject ¤t = *m_StructureStack.back(); current.data.basic.numChildren++; - current.data.children.push_back(new SDObject(name, "Byte Buffer")); + current.data.children.push_back(new SDObject(name, "Byte Buffer"_lit)); m_StructureStack.push_back(current.data.children.back()); SDObject &obj = *m_StructureStack.back(); @@ -334,7 +335,7 @@ public: return *this; } - Serialiser &Serialise(const char *name, bytebuf &el, + Serialiser &Serialise(const rdcliteral &name, bytebuf &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { uint64_t count = (uint64_t)el.size(); @@ -361,7 +362,7 @@ public: SDObject ¤t = *m_StructureStack.back(); current.data.basic.numChildren++; - current.data.children.push_back(new SDObject(name, "Byte Buffer")); + current.data.children.push_back(new SDObject(name, "Byte Buffer"_lit)); m_StructureStack.push_back(current.data.children.back()); SDObject &obj = *m_StructureStack.back(); @@ -407,7 +408,7 @@ public: return *this; } - Serialiser &Serialise(const char *name, std::vector &el, + Serialiser &Serialise(const rdcliteral &name, std::vector &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { uint64_t count = (uint64_t)el.size(); @@ -434,7 +435,7 @@ public: SDObject ¤t = *m_StructureStack.back(); current.data.basic.numChildren++; - current.data.children.push_back(new SDObject(name, "Byte Buffer")); + current.data.children.push_back(new SDObject(name, "Byte Buffer"_lit)); m_StructureStack.push_back(current.data.children.back()); SDObject &obj = *m_StructureStack.back(); @@ -481,26 +482,26 @@ public: return *this; } - Serialiser &Serialise(const char *name, void *&el, uint64_t byteSize, + Serialiser &Serialise(const rdcliteral &name, void *&el, uint64_t byteSize, SerialiserFlags flags = SerialiserFlags::NoFlags) { return Serialise(name, (byte *&)el, byteSize, flags); } - Serialiser &Serialise(const char *name, const void *&el, uint64_t byteSize, + Serialiser &Serialise(const rdcliteral &name, const void *&el, uint64_t byteSize, SerialiserFlags flags = SerialiserFlags::NoFlags) { return Serialise(name, (byte *&)el, byteSize, flags); } #if ENABLED(RDOC_SIZET_SEP_TYPE) - Serialiser &Serialise(const char *name, void *&el, size_t &byteSize, + Serialiser &Serialise(const rdcliteral &name, void *&el, size_t &byteSize, SerialiserFlags flags = SerialiserFlags::NoFlags) { return Serialise(name, (byte *&)el, byteSize, flags); } - Serialiser &Serialise(const char *name, const void *&el, size_t &byteSize, + Serialiser &Serialise(const rdcliteral &name, const void *&el, size_t &byteSize, SerialiserFlags flags = SerialiserFlags::NoFlags) { return Serialise(name, (byte *&)el, byteSize, flags); @@ -510,7 +511,7 @@ public: #if ENABLED(RDOC_WIN32) // annoyingly, windows SIZE_T is unsigned long on win32 which is a different type to // uint32_t/uint64_t. So we add a special overload here for its sake. - Serialiser &Serialise(const char *name, const void *&el, unsigned long &byteSize, + Serialiser &Serialise(const rdcliteral &name, const void *&el, unsigned long &byteSize, SerialiserFlags flags = SerialiserFlags::NoFlags) { uint64_t bs = byteSize; @@ -523,7 +524,8 @@ public: // serialise a fixed array like foo[4]; // never needs to allocate, just needs to be iterated template - Serialiser &Serialise(const char *name, T (&el)[N], SerialiserFlags flags = SerialiserFlags::NoFlags) + Serialiser &Serialise(const rdcliteral &name, T (&el)[N], + SerialiserFlags flags = SerialiserFlags::NoFlags) { // for consistency with other arrays, even though this is redundant, we serialise out and in the // size @@ -560,7 +562,7 @@ public: for(size_t i = 0; i < N; i++) { - arr.data.children[i] = new SDObject("$el", TypeName()); + arr.data.children[i] = new SDObject("$el"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[i]); SDObject &obj = *m_StructureStack.back(); @@ -616,7 +618,7 @@ public: // specialisation for fixed character arrays, serialising as strings template - Serialiser &Serialise(const char *name, char (&el)[N], + Serialiser &Serialise(const rdcliteral &name, char (&el)[N], SerialiserFlags flags = SerialiserFlags::NoFlags) { std::string str; @@ -640,7 +642,7 @@ public: // special function for serialising dynamically sized arrays template - Serialiser &Serialise(const char *name, T *&el, uint64_t arrayCount, + Serialiser &Serialise(const rdcliteral &name, T *&el, uint64_t arrayCount, SerialiserFlags flags = SerialiserFlags::NoFlags) { // silently handle NULL arrays @@ -693,7 +695,7 @@ public: for(uint64_t i = 0; el && i < arrayCount; i++) { - arr.data.children[(size_t)i] = new SDObject("$el", TypeName()); + arr.data.children[(size_t)i] = new SDObject("$el"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[(size_t)i]); SDObject &obj = *m_StructureStack.back(); @@ -735,7 +737,7 @@ public: // specialisations for container types template - Serialiser &Serialise(const char *name, std::vector &el, + Serialiser &Serialise(const rdcliteral &name, std::vector &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { uint64_t size = (uint64_t)el.size(); @@ -776,7 +778,7 @@ public: for(size_t i = 0; i < (size_t)size; i++) { - arr.data.children[i] = new SDObject("$el", TypeName()); + arr.data.children[i] = new SDObject("$el"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[i]); SDObject &obj = *m_StructureStack.back(); @@ -805,7 +807,7 @@ public: } template - Serialiser &Serialise(const char *name, std::list &el, + Serialiser &Serialise(const rdcliteral &name, std::list &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { uint64_t size = (uint64_t)el.size(); @@ -848,7 +850,7 @@ public: for(size_t i = 0; i < (size_t)size; i++) { - arr.data.children[i] = new SDObject("$el", TypeName()); + arr.data.children[i] = new SDObject("$el"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[i]); SDObject &obj = *m_StructureStack.back(); @@ -878,7 +880,7 @@ public: } template - Serialiser &Serialise(const char *name, std::pair &el, + Serialiser &Serialise(const rdcliteral &name, std::pair &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { if(ExportStructure()) @@ -891,7 +893,7 @@ public: SDObject &parent = *m_StructureStack.back(); parent.data.basic.numChildren++; - parent.data.children.push_back(new SDObject(name, "pair")); + parent.data.children.push_back(new SDObject(name, "pair"_lit)); m_StructureStack.push_back(parent.data.children.back()); SDObject &arr = *m_StructureStack.back(); @@ -902,7 +904,7 @@ public: arr.data.children.resize(2); { - arr.data.children[0] = new SDObject("first", TypeName()); + arr.data.children[0] = new SDObject("first"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[0]); SDObject &obj = *m_StructureStack.back(); @@ -917,7 +919,7 @@ public: } { - arr.data.children[1] = new SDObject("second", TypeName()); + arr.data.children[1] = new SDObject("second"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[1]); SDObject &obj = *m_StructureStack.back(); @@ -943,7 +945,7 @@ public: } template - Serialiser &Serialise(const char *name, rdcarray &el, + Serialiser &Serialise(const rdcliteral &name, rdcarray &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { uint64_t size = (uint64_t)el.size(); @@ -984,7 +986,7 @@ public: for(size_t i = 0; i < (size_t)size; i++) { - arr.data.children[i] = new SDObject("$el", TypeName()); + arr.data.children[i] = new SDObject("$el"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[i]); SDObject &obj = *m_StructureStack.back(); @@ -1013,7 +1015,7 @@ public: } template - Serialiser &Serialise(const char *name, rdcpair &el, + Serialiser &Serialise(const rdcliteral &name, rdcpair &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { if(ExportStructure()) @@ -1026,7 +1028,7 @@ public: SDObject &parent = *m_StructureStack.back(); parent.data.basic.numChildren++; - parent.data.children.push_back(new SDObject(name, "pair")); + parent.data.children.push_back(new SDObject(name, "pair"_lit)); m_StructureStack.push_back(parent.data.children.back()); SDObject &arr = *m_StructureStack.back(); @@ -1037,7 +1039,7 @@ public: arr.data.children.resize(2); { - arr.data.children[0] = new SDObject("first", TypeName()); + arr.data.children[0] = new SDObject("first"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[0]); SDObject &obj = *m_StructureStack.back(); @@ -1052,7 +1054,7 @@ public: } { - arr.data.children[1] = new SDObject("second", TypeName()); + arr.data.children[1] = new SDObject("second"_lit, TypeName()); m_StructureStack.push_back(arr.data.children[1]); SDObject &obj = *m_StructureStack.back(); @@ -1081,7 +1083,7 @@ public: // caller is responsible for ensuring that on write, it's safe to write into // this pointer on the other end template - Serialiser &Serialise(const char *name, const T &el, + Serialiser &Serialise(const rdcliteral &name, const T &el, SerialiserFlags flags = SerialiserFlags::NoFlags) { return Serialise(name, (T &)el, flags); @@ -1089,14 +1091,14 @@ public: // dynamic array variant template - Serialiser &Serialise(const char *name, const T *&el, uint64_t arrayCount, + Serialiser &Serialise(const rdcliteral &name, const T *&el, uint64_t arrayCount, SerialiserFlags flags = SerialiserFlags::NoFlags) { return Serialise(name, (T *&)el, arrayCount, flags); } template - Serialiser &SerialiseNullable(const char *name, T *&el, + Serialiser &SerialiseNullable(const rdcliteral &name, T *&el, SerialiserFlags flags = SerialiserFlags::NoFlags) { bool present = (el != NULL); @@ -1177,7 +1179,7 @@ public: } template - Serialiser &SerialiseNullable(const char *name, const T *&el, + Serialiser &SerialiseNullable(const rdcliteral &name, const T *&el, SerialiserFlags flags = SerialiserFlags::NoFlags) { return SerialiseNullable(name, (T *&)el, flags); @@ -1232,7 +1234,7 @@ public: SDObject ¤t = *m_StructureStack.back(); current.data.basic.numChildren++; - current.data.children.push_back(new SDObject(name.c_str(), "Byte Buffer")); + current.data.children.push_back(new SDObject(name.c_str(), "Byte Buffer"_lit)); m_StructureStack.push_back(current.data.children.back()); SDObject &obj = *m_StructureStack.back(); @@ -1317,7 +1319,7 @@ public: return *this; } - Serialiser &TypedAs(const char *name) + Serialiser &TypedAs(const rdcstr &name) { if(ExportStructure() && !m_StructureStack.empty()) { @@ -1339,7 +1341,7 @@ public: return *this; } - Serialiser &Named(const char *name) + Serialiser &Named(const rdcstr &name) { if(ExportStructure() && !m_StructureStack.empty()) { @@ -1696,9 +1698,9 @@ BASIC_TYPE_SERIALISE(bool, el, SDBasic::Boolean, 1); BASIC_TYPE_SERIALISE(char, el, SDBasic::Character, 1); template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "string"; + return "string"_lit; } template void DoSerialise(SerialiserType &ser, char *&el) @@ -1707,9 +1709,9 @@ void DoSerialise(SerialiserType &ser, char *&el) } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "string"; + return "string"_lit; } template void DoSerialise(SerialiserType &ser, const char *&el) @@ -1718,9 +1720,9 @@ void DoSerialise(SerialiserType &ser, const char *&el) } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "string"; + return "string"_lit; } template void DoSerialise(SerialiserType &ser, std::string &el) @@ -1728,9 +1730,9 @@ void DoSerialise(SerialiserType &ser, std::string &el) ser.SerialiseValue(SDBasic::String, 0, el); } template <> -inline const char *TypeName() +inline rdcliteral TypeName() { - return "string"; + return "string"_lit; } template void DoSerialise(SerialiserType &ser, rdcstr &el) @@ -1973,7 +1975,7 @@ struct ScopedDeserialiseArray #define SERIALISE_ELEMENT(obj) \ ScopedDeserialise CONCAT(deserialise_, __LINE__)( \ GET_SERIALISER, obj); \ - GET_SERIALISER.Serialise(#obj, obj) + GET_SERIALISER.Serialise(STRING_LITERAL(#obj), obj) #define SERIALISE_ELEMENT_TYPED(type, obj) \ if(ser.IsReading()) \ @@ -1984,20 +1986,20 @@ struct ScopedDeserialiseArray decltype(obj) *o; \ } CONCAT(union, __LINE__); \ CONCAT(union, __LINE__).o = &obj; \ - GET_SERIALISER.template Serialise(#obj, *CONCAT(union, __LINE__).t) + GET_SERIALISER.template Serialise(STRING_LITERAL(#obj), *CONCAT(union, __LINE__).t) #define SERIALISE_ELEMENT_ARRAY(obj, count) \ uint64_t CONCAT(dummy_array_count, __LINE__) = 0; \ (void)CONCAT(dummy_array_count, __LINE__); \ ScopedDeserialiseArray CONCAT(deserialise_, __LINE__)( \ GET_SERIALISER, &obj); \ - GET_SERIALISER.Serialise(#obj, obj, count, SerialiserFlags::AllocateMemory); \ + GET_SERIALISER.Serialise(STRING_LITERAL(#obj), obj, count, SerialiserFlags::AllocateMemory); \ CONCAT(deserialise_, __LINE__).setCount(count); #define SERIALISE_ELEMENT_OPT(obj) \ ScopedDeserialiseNullable CONCAT( \ deserialise_, __LINE__)(GET_SERIALISER, &obj); \ - GET_SERIALISER.SerialiseNullable(#obj, obj) + GET_SERIALISER.SerialiseNullable(STRING_LITERAL(#obj), obj) #define SERIALISE_ELEMENT_LOCAL(obj, inValue) \ typename std::remove_cv::type>::type obj; \ @@ -2005,10 +2007,10 @@ struct ScopedDeserialiseArray GET_SERIALISER, obj); \ if(GET_SERIALISER.IsWriting()) \ obj = (inValue); \ - GET_SERIALISER.Serialise(#obj, obj) + GET_SERIALISER.Serialise(STRING_LITERAL(#obj), obj) // these macros are for use when implementing a DoSerialise function -#define SERIALISE_MEMBER(obj) ser.Serialise(#obj, el.obj) +#define SERIALISE_MEMBER(obj) ser.Serialise(STRING_LITERAL(#obj), el.obj) #define SERIALISE_MEMBER_TYPED(type, obj) \ if(ser.IsReading()) \ @@ -2019,54 +2021,54 @@ struct ScopedDeserialiseArray decltype(el.obj) *o; \ } CONCAT(union, __LINE__); \ CONCAT(union, __LINE__).o = &el.obj; \ - ser.template Serialise(#obj, *CONCAT(union, __LINE__).t) + ser.template Serialise(STRING_LITERAL(#obj), *CONCAT(union, __LINE__).t) #define SERIALISE_MEMBER_ARRAY(arrayObj, countObj) \ - ser.Serialise(#arrayObj, el.arrayObj, el.countObj, SerialiserFlags::AllocateMemory) + ser.Serialise(STRING_LITERAL(#arrayObj), el.arrayObj, el.countObj, SerialiserFlags::AllocateMemory) -#define SERIALISE_MEMBER_ARRAY_TYPED(type, arrayObj, countObj) \ - if(ser.IsReading()) \ - el.arrayObj = NULL; \ - union \ - { \ - type **t; \ - decltype(el.arrayObj) *o; \ - } CONCAT(union, __LINE__); \ - CONCAT(union, __LINE__).o = &el.arrayObj; \ - ser.template Serialise(#arrayObj, *CONCAT(union, __LINE__).t, el.countObj, \ +#define SERIALISE_MEMBER_ARRAY_TYPED(type, arrayObj, countObj) \ + if(ser.IsReading()) \ + el.arrayObj = NULL; \ + union \ + { \ + type **t; \ + decltype(el.arrayObj) *o; \ + } CONCAT(union, __LINE__); \ + CONCAT(union, __LINE__).o = &el.arrayObj; \ + ser.template Serialise(STRING_LITERAL(#arrayObj), *CONCAT(union, __LINE__).t, el.countObj, \ SerialiserFlags::AllocateMemory) // a member that is a pointer and could be NULL, so needs a hidden 'present' // flag serialised out -#define SERIALISE_MEMBER_OPT(obj) ser.SerialiseNullable(#obj, el.obj) +#define SERIALISE_MEMBER_OPT(obj) ser.SerialiseNullable(STRING_LITERAL(#obj), el.obj) // this is used when we want to serialise a member that should not be read from, if we know from // context that it should always be serialised as NULL. It avoids the need to declare local dummy // variables. It serialises elements as empty/NULL/etc from a local while writing, and sets to // default on reading -#define SERIALISE_MEMBER_EMPTY(obj) \ - { \ - decltype(el.obj) dummy = {}; \ - ser.Serialise(#obj, dummy); \ - if(ser.IsReading()) \ - el.obj = decltype(el.obj)(); \ +#define SERIALISE_MEMBER_EMPTY(obj) \ + { \ + decltype(el.obj) dummy = {}; \ + ser.Serialise(STRING_LITERAL(#obj), dummy); \ + if(ser.IsReading()) \ + el.obj = decltype(el.obj)(); \ } -#define SERIALISE_MEMBER_OPT_EMPTY(obj) \ - { \ - decltype(el.obj) dummy = NULL; \ - ser.SerialiseNullable(#obj, dummy); \ - if(ser.IsReading()) \ - el.obj = NULL; \ +#define SERIALISE_MEMBER_OPT_EMPTY(obj) \ + { \ + decltype(el.obj) dummy = NULL; \ + ser.SerialiseNullable(STRING_LITERAL(#obj), dummy); \ + if(ser.IsReading()) \ + el.obj = NULL; \ } -#define SERIALISE_MEMBER_ARRAY_EMPTY(arrayObj) \ - { \ - decltype(el.arrayObj) dummy = NULL; \ - uint64_t dummycount = 0; \ - ser.Serialise(#arrayObj, dummy, dummycount, SerialiserFlags::AllocateMemory); \ - if(ser.IsReading()) \ - { \ - el.arrayObj = NULL; \ - } \ +#define SERIALISE_MEMBER_ARRAY_EMPTY(arrayObj) \ + { \ + decltype(el.arrayObj) dummy = NULL; \ + uint64_t dummycount = 0; \ + ser.Serialise(STRING_LITERAL(#arrayObj), dummy, dummycount, SerialiserFlags::AllocateMemory); \ + if(ser.IsReading()) \ + { \ + el.arrayObj = NULL; \ + } \ } // simple utility function for inside serialise functions, to check if the serialiser has hit an diff --git a/renderdoc/serialise/serialiser_tests.cpp b/renderdoc/serialise/serialiser_tests.cpp index 940c25d1d..e118245f5 100644 --- a/renderdoc/serialise/serialiser_tests.cpp +++ b/renderdoc/serialise/serialiser_tests.cpp @@ -499,7 +499,7 @@ TEST_CASE("Read/write chunk metadata", "[serialiser]") ser.WriteChunk(1); uint32_t dummy = 99; - ser.Serialise("dummy", dummy); + ser.Serialise("dummy"_lit, dummy); ser.EndChunk(); @@ -539,7 +539,7 @@ TEST_CASE("Read/write chunk metadata", "[serialiser]") ser.ReadChunk(); uint32_t dummy; - ser.Serialise("dummy", dummy); + ser.Serialise("dummy"_lit, dummy); ser.EndChunk(); @@ -993,7 +993,7 @@ enum MySpecialEnum DECLARE_REFLECTION_ENUM(MySpecialEnum); template <> -std::string DoStringise(const MySpecialEnum &el) +rdcstr DoStringise(const MySpecialEnum &el) { BEGIN_ENUM_STRINGISE(MySpecialEnum); { @@ -1327,7 +1327,7 @@ enum class TestEnumClass DECLARE_REFLECTION_ENUM(TestEnumClass); template <> -std::string DoStringise(const TestEnumClass &el) +rdcstr DoStringise(const TestEnumClass &el) { BEGIN_ENUM_STRINGISE(TestEnumClass) { @@ -1349,7 +1349,7 @@ enum TestEnum DECLARE_REFLECTION_ENUM(TestEnum); template <> -std::string DoStringise(const TestEnum &el) +rdcstr DoStringise(const TestEnum &el) { BEGIN_ENUM_STRINGISE(TestEnum) { @@ -1376,7 +1376,7 @@ DECLARE_REFLECTION_ENUM(TestBitfieldClass); BITMASK_OPERATORS(TestBitfieldClass); template <> -std::string DoStringise(const TestBitfieldClass &el) +rdcstr DoStringise(const TestBitfieldClass &el) { BEGIN_BITFIELD_STRINGISE(TestBitfieldClass) { @@ -1404,7 +1404,7 @@ enum TestBitfield DECLARE_REFLECTION_ENUM(TestBitfield); template <> -std::string DoStringise(const TestBitfield &el) +rdcstr DoStringise(const TestBitfield &el) { BEGIN_BITFIELD_STRINGISE(TestBitfield) { diff --git a/renderdoccmd/renderdoccmd.cpp b/renderdoccmd/renderdoccmd.cpp index 1046c76a6..111eb4eba 100644 --- a/renderdoccmd/renderdoccmd.cpp +++ b/renderdoccmd/renderdoccmd.cpp @@ -32,7 +32,7 @@ // so we implement it here using ostringstream. It's not great, but this is a very uncommon path - // either for invalid values or for when a new enum is added and the code isn't updated template <> -std::string DoStringise(const uint32_t &el) +rdcstr DoStringise(const uint32_t &el) { std::ostringstream oss; oss << el;