diff --git a/renderdoc/common/globalconfig.h b/renderdoc/common/globalconfig.h index 8b77f793b..6863d58ec 100644 --- a/renderdoc/common/globalconfig.h +++ b/renderdoc/common/globalconfig.h @@ -50,11 +50,6 @@ enum // force debugbreaks regardless of debug/release mode //#define FORCE_DEBUGBREAK -// synchronously (ie. flushed to disk) write out the text-mode only serialised -// data of ALL serialising. Helps in debugging crashes to know exactly which -// calls have been made -//#define DEBUG_TEXT_SERIALISER - ///////////////////////////////////////////////// // Logging configuration diff --git a/renderdoc/core/core.cpp b/renderdoc/core/core.cpp index 428852117..d43bdded3 100644 --- a/renderdoc/core/core.cpp +++ b/renderdoc/core/core.cpp @@ -516,7 +516,7 @@ Serialiser *RenderDoc::OpenWriteSerialiser(uint32_t frameNum, RDCInitParams *par Serialiser *chunkSerialiser = new Serialiser(NULL, Serialiser::WRITING, debugSerialiser); { - ScopedContext scope(chunkSerialiser, NULL, "Thumbnail", THUMBNAIL_DATA, false); + ScopedContext scope(chunkSerialiser, "Thumbnail", THUMBNAIL_DATA, false); bool HasThumbnail = (thpixels != NULL && thwidth > 0 && thheight > 0); chunkSerialiser->Serialise("HasThumbnail", HasThumbnail); @@ -533,13 +533,13 @@ Serialiser *RenderDoc::OpenWriteSerialiser(uint32_t frameNum, RDCInitParams *par } { - ScopedContext scope(chunkSerialiser, NULL, "Capture Create Parameters", CREATE_PARAMS, false); + ScopedContext scope(chunkSerialiser, "Capture Create Parameters", CREATE_PARAMS, false); chunkSerialiser->Serialise("DriverType", m_CurrentDriver); chunkSerialiser->SerialiseString("DriverName", m_CurrentDriverName); { - ScopedContext driverparams(chunkSerialiser, NULL, "Driver Specific", DRIVER_INIT_PARAMS, false); + ScopedContext driverparams(chunkSerialiser, "Driver Specific", DRIVER_INIT_PARAMS, false); params->m_pSerialiser = chunkSerialiser; params->m_State = WRITING; diff --git a/renderdoc/core/core.h b/renderdoc/core/core.h index ad3eb8de8..4f2c4dee5 100644 --- a/renderdoc/core/core.h +++ b/renderdoc/core/core.h @@ -125,13 +125,14 @@ enum ReplayLogType struct RDCInitParams { - RDCInitParams() { m_State = WRITING; m_pSerialiser = m_pDebugSerialiser = NULL; } + RDCInitParams() { m_State = WRITING; m_pSerialiser = NULL; } virtual ~RDCInitParams() {} virtual ReplayCreateStatus Serialise() = 0; LogState m_State; Serialiser *m_pSerialiser; - Serialiser *m_pDebugSerialiser; + + Serialiser *GetSerialiser() { return m_pSerialiser; } }; struct CaptureData diff --git a/renderdoc/core/resource_manager.h b/renderdoc/core/resource_manager.h index 0f9024396..6c2aaf07e 100644 --- a/renderdoc/core/resource_manager.h +++ b/renderdoc/core/resource_manager.h @@ -433,6 +433,8 @@ class ResourceManager : public ResourceRecordHandler LogState m_State; Serialiser *m_pSerialiser; + Serialiser *GetSerialiser() { return m_pSerialiser; } + bool m_InFrame; // very coarse lock, protects EVERYTHING. This could certainly be improved and it may be a bottleneck @@ -941,7 +943,7 @@ void ResourceManager::InsertI } else { - ScopedContext scope(m_pSerialiser, NULL, "Initial Contents", "Initial Contents", INITIAL_CONTENTS, false); + ScopedContext scope(m_pSerialiser, "Initial Contents", "Initial Contents", INITIAL_CONTENTS, false); Serialise_InitialState(res); @@ -963,7 +965,7 @@ void ResourceManager::InsertI } else { - ScopedContext scope(m_pSerialiser, NULL, "Initial Contents", "Initial Contents", INITIAL_CONTENTS, false); + ScopedContext scope(m_pSerialiser, "Initial Contents", "Initial Contents", INITIAL_CONTENTS, false); Serialise_InitialState(it->second); diff --git a/renderdoc/driver/d3d11/d3d11_common.cpp b/renderdoc/driver/d3d11/d3d11_common.cpp index aa7241b4c..48e21050a 100644 --- a/renderdoc/driver/d3d11/d3d11_common.cpp +++ b/renderdoc/driver/d3d11/d3d11_common.cpp @@ -1110,7 +1110,7 @@ ShaderReflection *MakeShaderReflection(DXBC::DXBCFile *dxbc) template<> void Serialiser::Serialise(const char *name, D3D11_BUFFER_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_BUFFER_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_BUFFER_DESC", 0, true); Serialise("ByteWidth", el.ByteWidth); Serialise("Usage", el.Usage); Serialise("BindFlags", (D3D11_BIND_FLAG&)el.BindFlags); @@ -1122,7 +1122,7 @@ void Serialiser::Serialise(const char *name, D3D11_BUFFER_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_TEXTURE1D_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_TEXTURE1D_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_TEXTURE1D_DESC", 0, true); Serialise("Width", el.Width); Serialise("MipLevels", el.MipLevels); Serialise("ArraySize", el.ArraySize); @@ -1136,7 +1136,7 @@ void Serialiser::Serialise(const char *name, D3D11_TEXTURE1D_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_TEXTURE2D_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_TEXTURE2D_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_TEXTURE2D_DESC", 0, true); Serialise("Width", el.Width); Serialise("Height", el.Height); Serialise("MipLevels", el.MipLevels); @@ -1152,7 +1152,7 @@ void Serialiser::Serialise(const char *name, D3D11_TEXTURE2D_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_TEXTURE3D_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_TEXTURE3D_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_TEXTURE3D_DESC", 0, true); Serialise("Width", el.Width); Serialise("Height", el.Height); Serialise("Depth", el.Depth); @@ -1167,7 +1167,7 @@ void Serialiser::Serialise(const char *name, D3D11_TEXTURE3D_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_SHADER_RESOURCE_VIEW_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_SHADER_RESOURCE_VIEW_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_SHADER_RESOURCE_VIEW_DESC", 0, true); Serialise("Format", el.Format); Serialise("ViewDimension", el.ViewDimension); @@ -1232,7 +1232,7 @@ void Serialiser::Serialise(const char *name, D3D11_SHADER_RESOURCE_VIEW_DESC &el template<> void Serialiser::Serialise(const char *name, D3D11_RENDER_TARGET_VIEW_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_RENDER_TARGET_VIEW_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_RENDER_TARGET_VIEW_DESC", 0, true); Serialise("Format", el.Format); Serialise("ViewDimension", el.ViewDimension); @@ -1279,7 +1279,7 @@ void Serialiser::Serialise(const char *name, D3D11_RENDER_TARGET_VIEW_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_UNORDERED_ACCESS_VIEW_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_UNORDERED_ACCESS_VIEW_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_UNORDERED_ACCESS_VIEW_DESC", 0, true); Serialise("Format", el.Format); Serialise("ViewDimension", el.ViewDimension); @@ -1320,7 +1320,7 @@ void Serialiser::Serialise(const char *name, D3D11_UNORDERED_ACCESS_VIEW_DESC &e template<> void Serialiser::Serialise(const char *name, D3D11_DEPTH_STENCIL_VIEW_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_DEPTH_STENCIL_VIEW_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_DEPTH_STENCIL_VIEW_DESC", 0, true); Serialise("Format", el.Format); Serialise("Flags", el.Flags); Serialise("ViewDimension", el.ViewDimension); @@ -1359,13 +1359,13 @@ void Serialiser::Serialise(const char *name, D3D11_DEPTH_STENCIL_VIEW_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_BLEND_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_BLEND_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_BLEND_DESC", 0, true); Serialise("AlphaToCoverageEnable", el.AlphaToCoverageEnable); Serialise("IndependentBlendEnable", el.IndependentBlendEnable); for(int i=0; i < 8; i++) { - ScopedContext targetscope(this, this, name, "D3D11_RENDER_TARGET_BLEND_DESC", 0, true); + ScopedContext targetscope(this, name, "D3D11_RENDER_TARGET_BLEND_DESC", 0, true); bool enable = el.RenderTarget[i].BlendEnable == TRUE; Serialise("BlendEnable", enable); @@ -1387,7 +1387,7 @@ void Serialiser::Serialise(const char *name, D3D11_BLEND_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_DEPTH_STENCIL_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_DEPTH_STENCIL_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_DEPTH_STENCIL_DESC", 0, true); Serialise("DepthEnable", el.DepthEnable); Serialise("DepthWriteMask", el.DepthWriteMask); @@ -1397,14 +1397,14 @@ void Serialiser::Serialise(const char *name, D3D11_DEPTH_STENCIL_DESC &el) Serialise("StencilWriteMask", el.StencilWriteMask); { - ScopedContext opscope(this, this, name, "D3D11_DEPTH_STENCILOP_DESC", 0, true); + ScopedContext opscope(this, name, "D3D11_DEPTH_STENCILOP_DESC", 0, true); Serialise("FrontFace.StencilFailOp", el.FrontFace.StencilFailOp); Serialise("FrontFace.StencilDepthFailOp", el.FrontFace.StencilDepthFailOp); Serialise("FrontFace.StencilPassOp", el.FrontFace.StencilPassOp); Serialise("FrontFace.StencilFunc", el.FrontFace.StencilFunc); } { - ScopedContext opscope(this, this, name, "D3D11_DEPTH_STENCILOP_DESC", 0, true); + ScopedContext opscope(this, name, "D3D11_DEPTH_STENCILOP_DESC", 0, true); Serialise("BackFace.StencilFailOp", el.BackFace.StencilFailOp); Serialise("BackFace.StencilDepthFailOp", el.BackFace.StencilDepthFailOp); Serialise("BackFace.StencilPassOp", el.BackFace.StencilPassOp); @@ -1415,7 +1415,7 @@ void Serialiser::Serialise(const char *name, D3D11_DEPTH_STENCIL_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_RASTERIZER_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_RASTERIZER_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_RASTERIZER_DESC", 0, true); Serialise("FillMode", el.FillMode); Serialise("CullMode", el.CullMode); @@ -1432,7 +1432,7 @@ void Serialiser::Serialise(const char *name, D3D11_RASTERIZER_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_QUERY_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_QUERY_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_QUERY_DESC", 0, true); Serialise("MiscFlags", el.MiscFlags); Serialise("Query", el.Query); @@ -1441,7 +1441,7 @@ void Serialiser::Serialise(const char *name, D3D11_QUERY_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_COUNTER_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_COUNTER_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_COUNTER_DESC", 0, true); Serialise("MiscFlags", el.MiscFlags); Serialise("Counter", el.Counter); @@ -1450,7 +1450,7 @@ void Serialiser::Serialise(const char *name, D3D11_COUNTER_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_SAMPLER_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_SAMPLER_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_SAMPLER_DESC", 0, true); Serialise("Filter", el.Filter); Serialise("AddressU", el.AddressU); @@ -1466,7 +1466,7 @@ void Serialiser::Serialise(const char *name, D3D11_SAMPLER_DESC &el) template<> void Serialiser::Serialise(const char *name, D3D11_SO_DECLARATION_ENTRY &el) { - ScopedContext scope(this, this, name, "D3D11_SO_DECLARATION_ENTRY", 0, true); + ScopedContext scope(this, name, "D3D11_SO_DECLARATION_ENTRY", 0, true); string s = ""; if(m_Mode >= WRITING && el.SemanticName != NULL) @@ -1503,7 +1503,7 @@ template<> void Serialiser::Serialise(const char *name, D3D11_SO_DECLARATION_ENT template<> void Serialiser::Serialise(const char *name, D3D11_INPUT_ELEMENT_DESC &el) { - ScopedContext scope(this, this, name, "D3D11_INPUT_ELEMENT_DESC", 0, true); + ScopedContext scope(this, name, "D3D11_INPUT_ELEMENT_DESC", 0, true); string s; if(m_Mode >= WRITING) @@ -1534,7 +1534,7 @@ template<> void Serialiser::Serialise(const char *name, D3D11_INPUT_ELEMENT_DESC template<> void Serialiser::Serialise(const char *name, D3D11_SUBRESOURCE_DATA &el) { - ScopedContext scope(this, this, name, "D3D11_SUBRESOURCE_DATA", 0, true); + ScopedContext scope(this, name, "D3D11_SUBRESOURCE_DATA", 0, true); // el.pSysMem Serialise("SysMemPitch", el.SysMemPitch); @@ -1545,13 +1545,13 @@ template<> void Serialiser::Serialise(const char *name, D3D11_SUBRESOURCE_DATA & template<> void Serialiser::Serialise(const char *name, D3D11_BLEND_DESC1 &el) { - ScopedContext scope(this, this, name, "D3D11_BLEND_DESC1", 0, true); + ScopedContext scope(this, name, "D3D11_BLEND_DESC1", 0, true); Serialise("AlphaToCoverageEnable", el.AlphaToCoverageEnable); Serialise("IndependentBlendEnable", el.IndependentBlendEnable); for(int i=0; i < 8; i++) { - ScopedContext targetscope(this, this, name, "D3D11_RENDER_TARGET_BLEND_DESC1", 0, true); + ScopedContext targetscope(this, name, "D3D11_RENDER_TARGET_BLEND_DESC1", 0, true); bool enable = el.RenderTarget[i].BlendEnable == TRUE; Serialise("BlendEnable", enable); @@ -1578,7 +1578,7 @@ void Serialiser::Serialise(const char *name, D3D11_BLEND_DESC1 &el) template<> void Serialiser::Serialise(const char *name, D3D11_RASTERIZER_DESC1 &el) { - ScopedContext scope(this, this, name, "D3D11_RASTERIZER_DESC1", 0, true); + ScopedContext scope(this, name, "D3D11_RASTERIZER_DESC1", 0, true); Serialise("FillMode", el.FillMode); Serialise("CullMode", el.CullMode); diff --git a/renderdoc/driver/d3d11/d3d11_context.cpp b/renderdoc/driver/d3d11/d3d11_context.cpp index 137d39fcc..cffa6c2c0 100644 --- a/renderdoc/driver/d3d11/d3d11_context.cpp +++ b/renderdoc/driver/d3d11/d3d11_context.cpp @@ -80,7 +80,7 @@ extern uint32_t NullCBOffsets[D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT] extern uint32_t NullCBCounts[D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT]; WrappedID3D11DeviceContext::WrappedID3D11DeviceContext(WrappedID3D11Device* realDevice, ID3D11DeviceContext* context, - Serialiser *ser, Serialiser *debugser) + Serialiser *ser) : RefCounter(context), m_pDevice(realDevice), m_pRealContext(context) { if(RenderDoc::Inst().GetCrashHandler()) @@ -122,7 +122,6 @@ WrappedID3D11DeviceContext::WrappedID3D11DeviceContext(WrappedID3D11Device* real else { m_pSerialiser = new Serialiser(NULL, Serialiser::WRITING, debugSerialiser); - m_pDebugSerialiser = debugser; m_State = WRITING_IDLE; } diff --git a/renderdoc/driver/d3d11/d3d11_context.h b/renderdoc/driver/d3d11/d3d11_context.h index 06b5b1b8f..f838c00c4 100644 --- a/renderdoc/driver/d3d11/d3d11_context.h +++ b/renderdoc/driver/d3d11/d3d11_context.h @@ -186,7 +186,6 @@ private: D3D11ResourceRecord *m_ContextRecord; Serialiser *m_pSerialiser; - Serialiser *m_pDebugSerialiser; LogState m_State; CaptureFailReason m_FailureReason; bool m_SuccessfulCapture; @@ -244,7 +243,7 @@ public: static const int AllocPoolMaxByteSize = 3*1024*1024; ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11DeviceContext, AllocPoolCount, AllocPoolMaxByteSize); - WrappedID3D11DeviceContext(WrappedID3D11Device* realDevice, ID3D11DeviceContext* context, Serialiser *ser, Serialiser *debugser); + WrappedID3D11DeviceContext(WrappedID3D11Device* realDevice, ID3D11DeviceContext* context, Serialiser *ser); void SetSerialiser(Serialiser *ser) { m_pSerialiser = ser; } virtual ~WrappedID3D11DeviceContext(); diff --git a/renderdoc/driver/d3d11/d3d11_context_wrap.cpp b/renderdoc/driver/d3d11/d3d11_context_wrap.cpp index 306606cca..ec9ebad4a 100644 --- a/renderdoc/driver/d3d11/d3d11_context_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_context_wrap.cpp @@ -3398,7 +3398,7 @@ void WrappedID3D11DeviceContext::Serialise_DebugMessages() for(uint32_t i=0; i < NumMessages; i++) { - ScopedContext msgscope(m_pSerialiser, m_pDebugSerialiser, "DebugMessage", "DebugMessage", 0, false); + ScopedContext msgscope(m_pSerialiser, "DebugMessage", "DebugMessage", 0, false); string desc; if(m_State >= WRITING) diff --git a/renderdoc/driver/d3d11/d3d11_device.cpp b/renderdoc/driver/d3d11/d3d11_device.cpp index 3e73175c5..84caabd45 100644 --- a/renderdoc/driver/d3d11/d3d11_device.cpp +++ b/renderdoc/driver/d3d11/d3d11_device.cpp @@ -306,7 +306,6 @@ WrappedID3D11Device::WrappedID3D11Device(ID3D11Device* realDevice, D3D11InitPara { m_State = READING; m_pSerialiser = NULL; - m_pDebugSerialiser = NULL; ResourceIDGen::SetReplayResourceIDs(); } @@ -314,12 +313,6 @@ WrappedID3D11Device::WrappedID3D11Device(ID3D11Device* realDevice, D3D11InitPara { m_State = WRITING_IDLE; m_pSerialiser = new Serialiser(NULL, Serialiser::WRITING, debugSerialiser); - -#ifdef DEBUG_TEXT_SERIALISER - m_pDebugSerialiser = new Serialiser("./debuglog.txt", Serialiser::DEBUGWRITING, true); -#else - m_pDebugSerialiser = NULL; -#endif } m_ResourceManager = new D3D11ResourceManager(m_State, m_pSerialiser, this); @@ -347,7 +340,7 @@ WrappedID3D11Device::WrappedID3D11Device(ID3D11Device* realDevice, D3D11InitPara ID3D11DeviceContext *context = NULL; realDevice->GetImmediateContext(&context); - m_pImmediateContext = new WrappedID3D11DeviceContext(this, context, m_pSerialiser, m_pDebugSerialiser); + m_pImmediateContext = new WrappedID3D11DeviceContext(this, context, m_pSerialiser); realDevice->QueryInterface(__uuidof(ID3D11InfoQueue), (void **)&m_pInfoQueue); realDevice->QueryInterface(__uuidof(ID3D11Debug), (void **)&m_WrappedDebug.m_pDebug); @@ -459,7 +452,6 @@ WrappedID3D11Device::~WrappedID3D11Device() SAFE_RELEASE(m_pDevice); SAFE_DELETE(m_pSerialiser); - SAFE_DELETE(m_pDebugSerialiser); if(RenderDoc::Inst().GetCrashHandler()) RenderDoc::Inst().GetCrashHandler()->UnregisterMemoryRegion(this); diff --git a/renderdoc/driver/d3d11/d3d11_device.h b/renderdoc/driver/d3d11/d3d11_device.h index 0723e263a..bcf1b1a3a 100644 --- a/renderdoc/driver/d3d11/d3d11_device.h +++ b/renderdoc/driver/d3d11/d3d11_device.h @@ -223,7 +223,6 @@ private: D3D11ResourceRecord *m_DeviceRecord; Serialiser *m_pSerialiser; - Serialiser *m_pDebugSerialiser; LogState m_State; bool m_AppControlledCapture; diff --git a/renderdoc/driver/d3d11/d3d11_device_wrap.cpp b/renderdoc/driver/d3d11/d3d11_device_wrap.cpp index 7eaa83fbd..0662c1b7b 100644 --- a/renderdoc/driver/d3d11/d3d11_device_wrap.cpp +++ b/renderdoc/driver/d3d11/d3d11_device_wrap.cpp @@ -2440,7 +2440,7 @@ bool WrappedID3D11Device::Serialise_CreateDeferredContext( } else { - ret = new WrappedID3D11DeviceContext(this, ret, m_pSerialiser, m_pDebugSerialiser); + ret = new WrappedID3D11DeviceContext(this, ret, m_pSerialiser); AddDeferredContext((WrappedID3D11DeviceContext *)ret); @@ -2466,7 +2466,7 @@ HRESULT WrappedID3D11Device::CreateDeferredContext( { SCOPED_LOCK(m_D3DLock); - WrappedID3D11DeviceContext *w = new WrappedID3D11DeviceContext(this, real, m_pSerialiser, m_pDebugSerialiser); + WrappedID3D11DeviceContext *w = new WrappedID3D11DeviceContext(this, real, m_pSerialiser); wrapped = w; diff --git a/renderdoc/driver/d3d11/d3d11_renderstate.h b/renderdoc/driver/d3d11/d3d11_renderstate.h index b9856917d..898267dcb 100644 --- a/renderdoc/driver/d3d11/d3d11_renderstate.h +++ b/renderdoc/driver/d3d11/d3d11_renderstate.h @@ -430,6 +430,8 @@ private: void AddRefs(); void ReleaseRefs(); + Serialiser *GetSerialiser() { return m_pSerialiser; } + Serialiser *m_pSerialiser; bool m_ImmediatePipeline; WrappedID3D11Device *m_pDevice; diff --git a/renderdoc/driver/gl/gl_driver.cpp b/renderdoc/driver/gl/gl_driver.cpp index 98cb46d28..dd46c01ee 100644 --- a/renderdoc/driver/gl/gl_driver.cpp +++ b/renderdoc/driver/gl/gl_driver.cpp @@ -2857,7 +2857,7 @@ void WrappedOpenGL::Serialise_DebugMessages() for(uint32_t i=0; i < NumMessages; i++) { - ScopedContext msgscope(m_pSerialiser, NULL, "DebugMessage", "DebugMessage", 0, false); + ScopedContext msgscope(m_pSerialiser, "DebugMessage", "DebugMessage", 0, false); string desc; if(m_State >= WRITING) diff --git a/renderdoc/driver/gl/gl_manager.cpp b/renderdoc/driver/gl/gl_manager.cpp index 933932b50..3710c72e3 100644 --- a/renderdoc/driver/gl/gl_manager.cpp +++ b/renderdoc/driver/gl/gl_manager.cpp @@ -100,7 +100,7 @@ const GLenum FramebufferInitialData::attachmentNames[10] = { template<> void Serialiser::Serialise(const char *name, VertexAttribInitialData &el) { - ScopedContext scope(this, this, name, "VertexArrayInitialData", 0, true); + ScopedContext scope(this, name, "VertexArrayInitialData", 0, true); Serialise("enabled", el.enabled); Serialise("vbslot", el.vbslot); Serialise("offset", el.offset); @@ -113,7 +113,7 @@ void Serialiser::Serialise(const char *name, VertexAttribInitialData &el) template<> void Serialiser::Serialise(const char *name, VertexBufferInitialData &el) { - ScopedContext scope(this, this, name, "VertexBufferInitialData", 0, true); + ScopedContext scope(this, name, "VertexBufferInitialData", 0, true); Serialise("Buffer", el.Buffer); Serialise("Stride", el.Stride); Serialise("Offset", el.Offset); @@ -123,7 +123,7 @@ void Serialiser::Serialise(const char *name, VertexBufferInitialData &el) template<> void Serialiser::Serialise(const char *name, FeedbackInitialData &el) { - ScopedContext scope(this, this, name, "FeedbackInitialData", 0, true); + ScopedContext scope(this, name, "FeedbackInitialData", 0, true); Serialise("valid", el.valid); SerialisePODArray<4>("Buffer", el.Buffer); SerialisePODArray<4>("Offset", el.Offset); @@ -133,7 +133,7 @@ void Serialiser::Serialise(const char *name, FeedbackInitialData &el) template<> void Serialiser::Serialise(const char *name, FramebufferAttachmentData &el) { - ScopedContext scope(this, this, name, "FramebufferAttachmentData", 0, true); + ScopedContext scope(this, name, "FramebufferAttachmentData", 0, true); Serialise("renderbuffer", el.renderbuffer); Serialise("layered", el.layered); Serialise("layer", el.layer); @@ -144,7 +144,7 @@ void Serialiser::Serialise(const char *name, FramebufferAttachmentData &el) template<> void Serialiser::Serialise(const char *name, FramebufferInitialData &el) { - ScopedContext scope(this, this, name, "FramebufferInitialData", 0, true); + ScopedContext scope(this, name, "FramebufferInitialData", 0, true); Serialise("valid", el.valid); SerialisePODArray<8>("DrawBuffers", el.DrawBuffers); for(size_t i=0; i < ARRAY_COUNT(el.Attachments); i++) @@ -173,7 +173,7 @@ struct TextureStateInitialData template<> void Serialiser::Serialise(const char *name, TextureStateInitialData &el) { - ScopedContext scope(this, this, name, "TextureStateInitialData", 0, true); + ScopedContext scope(this, name, "TextureStateInitialData", 0, true); Serialise("baseLevel", el.baseLevel); Serialise("maxLevel", el.maxLevel); Serialise("minLod", el.minLod); @@ -418,7 +418,7 @@ bool GLResourceManager::Prepare_InitialState(GLResource res) } else if(res.Namespace == eResProgram) { - ScopedContext scope(m_pSerialiser, NULL, "Initial Contents", "Initial Contents", INITIAL_CONTENTS, false); + ScopedContext scope(m_pSerialiser, "Initial Contents", "Initial Contents", INITIAL_CONTENTS, false); m_pSerialiser->Serialise("Id", Id); diff --git a/renderdoc/driver/gl/gl_renderstate.h b/renderdoc/driver/gl/gl_renderstate.h index 61e482ee7..510df255d 100644 --- a/renderdoc/driver/gl/gl_renderstate.h +++ b/renderdoc/driver/gl/gl_renderstate.h @@ -278,4 +278,6 @@ private: Serialiser *m_pSerialiser; LogState m_State; const GLHookSet *m_Real; + + Serialiser *GetSerialiser() { return m_pSerialiser; } }; diff --git a/renderdoc/driver/vulkan/vk_common.cpp b/renderdoc/driver/vulkan/vk_common.cpp index eb87e31e4..c7081c60d 100644 --- a/renderdoc/driver/vulkan/vk_common.cpp +++ b/renderdoc/driver/vulkan/vk_common.cpp @@ -1995,13 +1995,13 @@ void SerialiseOptionalObject(Serialiser *ser, const char *name, T *&el) template<> void Serialiser::Serialise(const char *name, VkGenericStruct &el) { - ScopedContext scope(this, this, name, "NextStructure", 0, true); + ScopedContext scope(this, name, "NextStructure", 0, true); } template<> void Serialiser::Serialise(const char *name, VkDeviceQueueCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDeviceQueueCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDeviceQueueCreateInfo", 0, true); Serialise("queueFamilyIndex", el.queueFamilyIndex); Serialise("queueCount", el.queueCount); @@ -2012,7 +2012,7 @@ void Serialiser::Serialise(const char *name, VkDeviceQueueCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkPhysicalDeviceFeatures &el) { - ScopedContext scope(this, this, name, "VkPhysicalDeviceFeatures", 0, true); + ScopedContext scope(this, name, "VkPhysicalDeviceFeatures", 0, true); Serialise("robustBufferAccess", el.robustBufferAccess); Serialise("fullDrawIndexUint32", el.fullDrawIndexUint32); @@ -2077,7 +2077,7 @@ void Serialiser::Serialise(const char *name, VkPhysicalDeviceFeatures &el) template<> void Serialiser::Serialise(const char *name, VkDeviceCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDeviceCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDeviceCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO); Serialise("sType", el.sType); @@ -2139,7 +2139,7 @@ void Serialiser::Serialise(const char *name, VkDeviceCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkBufferCreateInfo &el) { - ScopedContext scope(this, this, name, "VkBufferCreateInfo", 0, true); + ScopedContext scope(this, name, "VkBufferCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO); Serialise("sType", el.sType); @@ -2156,7 +2156,7 @@ void Serialiser::Serialise(const char *name, VkBufferCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkBufferViewCreateInfo &el) { - ScopedContext scope(this, this, name, "VkBufferViewCreateInfo", 0, true); + ScopedContext scope(this, name, "VkBufferViewCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO); Serialise("sType", el.sType); @@ -2172,7 +2172,7 @@ void Serialiser::Serialise(const char *name, VkBufferViewCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkImageCreateInfo &el) { - ScopedContext scope(this, this, name, "VkImageCreateInfo", 0, true); + ScopedContext scope(this, name, "VkImageCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO); Serialise("sType", el.sType); @@ -2195,7 +2195,7 @@ void Serialiser::Serialise(const char *name, VkImageCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkImageViewCreateInfo &el) { - ScopedContext scope(this, this, name, "VkImageViewCreateInfo", 0, true); + ScopedContext scope(this, name, "VkImageViewCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO); Serialise("sType", el.sType); @@ -2211,7 +2211,7 @@ void Serialiser::Serialise(const char *name, VkImageViewCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkAttachmentBindInfo &el) { - ScopedContext scope(this, this, name, "VkAttachmentBindInfo", 0, true); + ScopedContext scope(this, name, "VkAttachmentBindInfo", 0, true); SerialiseObject(VkAttachmentView, "view", el.view); Serialise("layout", el.layout); @@ -2220,7 +2220,7 @@ void Serialiser::Serialise(const char *name, VkAttachmentBindInfo &el) template<> void Serialiser::Serialise(const char *name, VkFramebufferCreateInfo &el) { - ScopedContext scope(this, this, name, "VkFramebufferCreateInfo", 0, true); + ScopedContext scope(this, name, "VkFramebufferCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO); Serialise("sType", el.sType); @@ -2236,7 +2236,7 @@ void Serialiser::Serialise(const char *name, VkFramebufferCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkAttachmentDescription &el) { - ScopedContext scope(this, this, name, "VkAttachmentDescription", 0, true); + ScopedContext scope(this, name, "VkAttachmentDescription", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION); Serialise("sType", el.sType); @@ -2255,7 +2255,7 @@ void Serialiser::Serialise(const char *name, VkAttachmentDescription &el) template<> void Serialiser::Serialise(const char *name, VkSubpassDescription &el) { - ScopedContext scope(this, this, name, "VkSubpassDescription", 0, true); + ScopedContext scope(this, name, "VkSubpassDescription", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION); Serialise("sType", el.sType); @@ -2288,7 +2288,7 @@ void Serialiser::Serialise(const char *name, VkSubpassDescription &el) template<> void Serialiser::Serialise(const char *name, VkSubpassDependency &el) { - ScopedContext scope(this, this, name, "VkSubpassDependency", 0, true); + ScopedContext scope(this, name, "VkSubpassDependency", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY); Serialise("sType", el.sType); @@ -2306,7 +2306,7 @@ void Serialiser::Serialise(const char *name, VkSubpassDependency &el) template<> void Serialiser::Serialise(const char *name, VkRenderPassCreateInfo &el) { - ScopedContext scope(this, this, name, "VkRenderPassCreateInfo", 0, true); + ScopedContext scope(this, name, "VkRenderPassCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO); Serialise("sType", el.sType); @@ -2320,7 +2320,7 @@ void Serialiser::Serialise(const char *name, VkRenderPassCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkRenderPassBeginInfo &el) { - ScopedContext scope(this, this, name, "VkRenderPassBeginInfo", 0, true); + ScopedContext scope(this, name, "VkRenderPassBeginInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO); Serialise("sType", el.sType); @@ -2338,7 +2338,7 @@ void Serialiser::Serialise(const char *name, VkRenderPassBeginInfo &el) template<> void Serialiser::Serialise(const char *name, VkAttachmentViewCreateInfo &el) { - ScopedContext scope(this, this, name, "VkAttachmentViewCreateInfo", 0, true); + ScopedContext scope(this, name, "VkAttachmentViewCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_ATTACHMENT_VIEW_CREATE_INFO); Serialise("sType", el.sType); @@ -2354,7 +2354,7 @@ void Serialiser::Serialise(const char *name, VkAttachmentViewCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkDynamicViewportStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDynamicVpStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDynamicVpStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DYNAMIC_VIEWPORT_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2373,7 +2373,7 @@ void Serialiser::Serialise(const char *name, VkDynamicViewportStateCreateInfo &e template<> void Serialiser::Serialise(const char *name, VkDynamicRasterStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDynamicRsStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDynamicRsStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DYNAMIC_RASTER_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2388,7 +2388,7 @@ void Serialiser::Serialise(const char *name, VkDynamicRasterStateCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkDynamicColorBlendStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDynamicCbStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDynamicCbStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DYNAMIC_COLOR_BLEND_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2400,7 +2400,7 @@ void Serialiser::Serialise(const char *name, VkDynamicColorBlendStateCreateInfo template<> void Serialiser::Serialise(const char *name, VkDynamicDepthStencilStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDynamicDsStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDynamicDsStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DYNAMIC_DEPTH_STENCIL_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2417,7 +2417,7 @@ void Serialiser::Serialise(const char *name, VkDynamicDepthStencilStateCreateInf template<> void Serialiser::Serialise(const char *name, VkVertexInputBindingDescription &el) { - ScopedContext scope(this, this, name, "VkVertexInputBindingDescription", 0, true); + ScopedContext scope(this, name, "VkVertexInputBindingDescription", 0, true); Serialise("binding", el.binding); Serialise("strideInBytes", el.strideInBytes); @@ -2427,7 +2427,7 @@ void Serialiser::Serialise(const char *name, VkVertexInputBindingDescription &el template<> void Serialiser::Serialise(const char *name, VkVertexInputAttributeDescription &el) { - ScopedContext scope(this, this, name, "VkVertexInputAttributeDescription", 0, true); + ScopedContext scope(this, name, "VkVertexInputAttributeDescription", 0, true); Serialise("location", el.location); Serialise("binding", el.binding); @@ -2438,7 +2438,7 @@ void Serialiser::Serialise(const char *name, VkVertexInputAttributeDescription & template<> void Serialiser::Serialise(const char *name, VkPipelineVertexInputStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineVertexInputStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineVertexInputStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2451,7 +2451,7 @@ void Serialiser::Serialise(const char *name, VkPipelineVertexInputStateCreateInf template<> void Serialiser::Serialise(const char *name, VkPipelineInputAssemblyStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineInputAssemblyStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineInputAssemblyStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2464,7 +2464,7 @@ void Serialiser::Serialise(const char *name, VkPipelineInputAssemblyStateCreateI template<> void Serialiser::Serialise(const char *name, VkPipelineTessellationStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineTessStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineTessStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2476,7 +2476,7 @@ void Serialiser::Serialise(const char *name, VkPipelineTessellationStateCreateIn template<> void Serialiser::Serialise(const char *name, VkPipelineViewportStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineViewportStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineViewportStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2488,7 +2488,7 @@ void Serialiser::Serialise(const char *name, VkPipelineViewportStateCreateInfo & template<> void Serialiser::Serialise(const char *name, VkPipelineRasterStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineRasterStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineRasterStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_RASTER_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2504,7 +2504,7 @@ void Serialiser::Serialise(const char *name, VkPipelineRasterStateCreateInfo &el template<> void Serialiser::Serialise(const char *name, VkPipelineMultisampleStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineMultisampleStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineMultisampleStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2519,7 +2519,7 @@ void Serialiser::Serialise(const char *name, VkPipelineMultisampleStateCreateInf template<> void Serialiser::Serialise(const char *name, VkPipelineColorBlendAttachmentState &el) { - ScopedContext scope(this, this, name, "VkPipelineColorBlendAttachmentState", 0, true); + ScopedContext scope(this, name, "VkPipelineColorBlendAttachmentState", 0, true); Serialise("blendEnable", el.blendEnable); Serialise("srcBlendColor", el.srcBlendColor); @@ -2534,7 +2534,7 @@ void Serialiser::Serialise(const char *name, VkPipelineColorBlendAttachmentState template<> void Serialiser::Serialise(const char *name, VkPipelineColorBlendStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineColorBlendStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineColorBlendStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2552,7 +2552,7 @@ void Serialiser::Serialise(const char *name, VkPipelineColorBlendStateCreateInfo template<> void Serialiser::Serialise(const char *name, VkPipelineDepthStencilStateCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineDepthStencilStateCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineDepthStencilStateCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO); Serialise("sType", el.sType); @@ -2570,7 +2570,7 @@ void Serialiser::Serialise(const char *name, VkPipelineDepthStencilStateCreateIn template<> void Serialiser::Serialise(const char *name, VkCmdPoolCreateInfo &el) { - ScopedContext scope(this, this, name, "VkCmdPoolCreateInfo", 0, true); + ScopedContext scope(this, name, "VkCmdPoolCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_CMD_POOL_CREATE_INFO); Serialise("sType", el.sType); @@ -2583,7 +2583,7 @@ void Serialiser::Serialise(const char *name, VkCmdPoolCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkCmdBufferCreateInfo &el) { - ScopedContext scope(this, this, name, "VkCmdBufferCreateInfo", 0, true); + ScopedContext scope(this, name, "VkCmdBufferCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_CMD_BUFFER_CREATE_INFO); Serialise("sType", el.sType); @@ -2599,7 +2599,7 @@ void Serialiser::Serialise(const char *name, VkCmdBufferCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkCmdBufferBeginInfo &el) { - ScopedContext scope(this, this, name, "VkCmdBufferBeginInfo", 0, true); + ScopedContext scope(this, name, "VkCmdBufferBeginInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO); Serialise("sType", el.sType); @@ -2613,7 +2613,7 @@ void Serialiser::Serialise(const char *name, VkCmdBufferBeginInfo &el) template<> void Serialiser::Serialise(const char *name, VkStencilOpState &el) { - ScopedContext scope(this, this, name, "VkStencilOpState", 0, true); + ScopedContext scope(this, name, "VkStencilOpState", 0, true); Serialise("stencilFailOp", el.stencilFailOp); Serialise("stencilPassOp", el.stencilPassOp); @@ -2624,7 +2624,7 @@ void Serialiser::Serialise(const char *name, VkStencilOpState &el) template<> void Serialiser::Serialise(const char *name, VkQueryPoolCreateInfo &el) { - ScopedContext scope(this, this, name, "VkQueryPoolCreateInfo", 0, true); + ScopedContext scope(this, name, "VkQueryPoolCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO); Serialise("sType", el.sType); @@ -2638,7 +2638,7 @@ void Serialiser::Serialise(const char *name, VkQueryPoolCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkSemaphoreCreateInfo &el) { - ScopedContext scope(this, this, name, "VkSemaphoreCreateInfo", 0, true); + ScopedContext scope(this, name, "VkSemaphoreCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO); Serialise("sType", el.sType); @@ -2652,7 +2652,7 @@ void Serialiser::Serialise(const char *name, VkSemaphoreCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkFenceCreateInfo &el) { - ScopedContext scope(this, this, name, "VkFenceCreateInfo", 0, true); + ScopedContext scope(this, name, "VkFenceCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_FENCE_CREATE_INFO); Serialise("sType", el.sType); @@ -2664,7 +2664,7 @@ void Serialiser::Serialise(const char *name, VkFenceCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkSamplerCreateInfo &el) { - ScopedContext scope(this, this, name, "VkSamplerCreateInfo", 0, true); + ScopedContext scope(this, name, "VkSamplerCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO); Serialise("sType", el.sType); @@ -2687,7 +2687,7 @@ void Serialiser::Serialise(const char *name, VkSamplerCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkPipelineShaderStageCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineShaderStageCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineShaderStageCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO); Serialise("sType", el.sType); @@ -2702,7 +2702,7 @@ void Serialiser::Serialise(const char *name, VkPipelineShaderStageCreateInfo &el template<> void Serialiser::Serialise(const char *name, VkSpecializationMapEntry &el) { - ScopedContext scope(this, this, name, "VkSpecializationMapEntry", 0, true); + ScopedContext scope(this, name, "VkSpecializationMapEntry", 0, true); Serialise("constantId", el.constantId); uint64_t size = el.size; @@ -2714,7 +2714,7 @@ void Serialiser::Serialise(const char *name, VkSpecializationMapEntry &el) template<> void Serialiser::Serialise(const char *name, VkSpecializationInfo &el) { - ScopedContext scope(this, this, name, "VkSpecializationInfo", 0, true); + ScopedContext scope(this, name, "VkSpecializationInfo", 0, true); uint64_t dataSize = el.dataSize; Serialise("dataSize", el.dataSize); @@ -2728,7 +2728,7 @@ void Serialiser::Serialise(const char *name, VkSpecializationInfo &el) template<> void Serialiser::Serialise(const char *name, VkPipelineCacheCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineCacheCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineCacheCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO); Serialise("sType", el.sType); @@ -2750,7 +2750,7 @@ void Serialiser::Serialise(const char *name, VkPipelineCacheCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkPipelineLayoutCreateInfo &el) { - ScopedContext scope(this, this, name, "VkPipelineLayoutCreateInfo", 0, true); + ScopedContext scope(this, name, "VkPipelineLayoutCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO); Serialise("sType", el.sType); @@ -2774,7 +2774,7 @@ void Serialiser::Serialise(const char *name, VkPipelineLayoutCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkShaderModuleCreateInfo &el) { - ScopedContext scope(this, this, name, "VkShaderModuleCreateInfo", 0, true); + ScopedContext scope(this, name, "VkShaderModuleCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO); Serialise("sType", el.sType); @@ -2795,7 +2795,7 @@ void Serialiser::Serialise(const char *name, VkShaderModuleCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkShaderCreateInfo &el) { - ScopedContext scope(this, this, name, "VkShaderCreateInfo", 0, true); + ScopedContext scope(this, name, "VkShaderCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SHADER_CREATE_INFO); Serialise("sType", el.sType); @@ -2830,7 +2830,7 @@ void Serialiser::Serialise(const char *name, VkShaderCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkImageSubresourceRange &el) { - ScopedContext scope(this, this, name, "VkImageSubresourceRange", 0, true); + ScopedContext scope(this, name, "VkImageSubresourceRange", 0, true); Serialise("aspect", el.aspect); Serialise("baseMipLevel", el.baseMipLevel); @@ -2842,7 +2842,7 @@ void Serialiser::Serialise(const char *name, VkImageSubresourceRange &el) template<> void Serialiser::Serialise(const char *name, VkImageSubresource &el) { - ScopedContext scope(this, this, name, "VkImageSubresource", 0, true); + ScopedContext scope(this, name, "VkImageSubresource", 0, true); Serialise("aspect", el.aspect); Serialise("mipLevel", el.mipLevel); @@ -2852,7 +2852,7 @@ void Serialiser::Serialise(const char *name, VkImageSubresource &el) template<> void Serialiser::Serialise(const char *name, VkMemoryAllocInfo &el) { - ScopedContext scope(this, this, name, "VkMemoryAllocInfo", 0, true); + ScopedContext scope(this, name, "VkMemoryAllocInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO); Serialise("sType", el.sType); @@ -2865,7 +2865,7 @@ void Serialiser::Serialise(const char *name, VkMemoryAllocInfo &el) template<> void Serialiser::Serialise(const char *name, VkMemoryBarrier &el) { - ScopedContext scope(this, this, name, "VkMemoryBarrier", 0, true); + ScopedContext scope(this, name, "VkMemoryBarrier", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_MEMORY_BARRIER); Serialise("sType", el.sType); @@ -2878,7 +2878,7 @@ void Serialiser::Serialise(const char *name, VkMemoryBarrier &el) template<> void Serialiser::Serialise(const char *name, VkBufferMemoryBarrier &el) { - ScopedContext scope(this, this, name, "VkBufferMemoryBarrier", 0, true); + ScopedContext scope(this, name, "VkBufferMemoryBarrier", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER); Serialise("sType", el.sType); @@ -2896,7 +2896,7 @@ void Serialiser::Serialise(const char *name, VkBufferMemoryBarrier &el) template<> void Serialiser::Serialise(const char *name, VkImageMemoryBarrier &el) { - ScopedContext scope(this, this, name, "VkImageMemoryBarrier", 0, true); + ScopedContext scope(this, name, "VkImageMemoryBarrier", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER); Serialise("sType", el.sType); @@ -2915,7 +2915,7 @@ void Serialiser::Serialise(const char *name, VkImageMemoryBarrier &el) template<> void Serialiser::Serialise(const char *name, VkGraphicsPipelineCreateInfo &el) { - ScopedContext scope(this, this, name, "VkGraphicsPipelineCreateInfo", 0, true); + ScopedContext scope(this, name, "VkGraphicsPipelineCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO); Serialise("sType", el.sType); @@ -2943,7 +2943,7 @@ void Serialiser::Serialise(const char *name, VkGraphicsPipelineCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkComputePipelineCreateInfo &el) { - ScopedContext scope(this, this, name, "VkComputePipelineCreateInfo", 0, true); + ScopedContext scope(this, name, "VkComputePipelineCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO); Serialise("sType", el.sType); @@ -2959,7 +2959,7 @@ void Serialiser::Serialise(const char *name, VkComputePipelineCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkDescriptorTypeCount &el) { - ScopedContext scope(this, this, name, "VkDescriptorTypeCount", 0, true); + ScopedContext scope(this, name, "VkDescriptorTypeCount", 0, true); Serialise("type", el.type); Serialise("count", el.count); @@ -2968,7 +2968,7 @@ void Serialiser::Serialise(const char *name, VkDescriptorTypeCount &el) template<> void Serialiser::Serialise(const char *name, VkDescriptorPoolCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDescriptorPoolCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDescriptorPoolCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO); Serialise("sType", el.sType); @@ -2980,7 +2980,7 @@ void Serialiser::Serialise(const char *name, VkDescriptorPoolCreateInfo &el) template<> void Serialiser::Serialise(const char *name, VkDescriptorInfo &el) { - ScopedContext scope(this, this, name, "VkDescriptorInfo", 0, true); + ScopedContext scope(this, name, "VkDescriptorInfo", 0, true); SerialiseObject(VkBufferView, "bufferView", el.bufferView); SerialiseObject(VkSampler, "sampler", el.sampler); @@ -2992,7 +2992,7 @@ void Serialiser::Serialise(const char *name, VkDescriptorInfo &el) template<> void Serialiser::Serialise(const char *name, VkWriteDescriptorSet &el) { - ScopedContext scope(this, this, name, "VkWriteDescriptorSet", 0, true); + ScopedContext scope(this, name, "VkWriteDescriptorSet", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET); Serialise("sType", el.sType); @@ -3009,7 +3009,7 @@ void Serialiser::Serialise(const char *name, VkWriteDescriptorSet &el) template<> void Serialiser::Serialise(const char *name, VkCopyDescriptorSet &el) { - ScopedContext scope(this, this, name, "VkCopyDescriptorSet", 0, true); + ScopedContext scope(this, name, "VkCopyDescriptorSet", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET); Serialise("sType", el.sType); @@ -3028,7 +3028,7 @@ void Serialiser::Serialise(const char *name, VkCopyDescriptorSet &el) template<> void Serialiser::Serialise(const char *name, VkPushConstantRange &el) { - ScopedContext scope(this, this, name, "VkPushConstantRange", 0, true); + ScopedContext scope(this, name, "VkPushConstantRange", 0, true); Serialise("stageFlags", (VkShaderStageFlagBits &)el.stageFlags); Serialise("start", el.start); @@ -3038,7 +3038,7 @@ void Serialiser::Serialise(const char *name, VkPushConstantRange &el) template<> void Serialiser::Serialise(const char *name, VkDescriptorSetLayoutBinding &el) { - ScopedContext scope(this, this, name, "VkDescriptorSetLayoutBinding", 0, true); + ScopedContext scope(this, name, "VkDescriptorSetLayoutBinding", 0, true); Serialise("descriptorType", el.descriptorType); Serialise("arraySize", el.arraySize); @@ -3068,7 +3068,7 @@ void Serialiser::Serialise(const char *name, VkDescriptorSetLayoutBinding &el) template<> void Serialiser::Serialise(const char *name, VkDescriptorSetLayoutCreateInfo &el) { - ScopedContext scope(this, this, name, "VkDescriptorSetLayoutCreateInfo", 0, true); + ScopedContext scope(this, name, "VkDescriptorSetLayoutCreateInfo", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO); Serialise("sType", el.sType); @@ -3080,7 +3080,7 @@ void Serialiser::Serialise(const char *name, VkDescriptorSetLayoutCreateInfo &el template<> void Serialiser::Serialise(const char *name, VkChannelMapping &el) { - ScopedContext scope(this, this, name, "VkChannelMapping", 0, true); + ScopedContext scope(this, name, "VkChannelMapping", 0, true); Serialise("r", el.r); Serialise("g", el.g); @@ -3091,7 +3091,7 @@ void Serialiser::Serialise(const char *name, VkChannelMapping &el) template<> void Serialiser::Serialise(const char *name, VkBufferImageCopy &el) { - ScopedContext scope(this, this, name, "VkBufferImageCopy", 0, true); + ScopedContext scope(this, name, "VkBufferImageCopy", 0, true); Serialise("memOffset", el.bufferOffset); Serialise("bufferRowLength", el.bufferRowLength); @@ -3104,7 +3104,7 @@ void Serialiser::Serialise(const char *name, VkBufferImageCopy &el) template<> void Serialiser::Serialise(const char *name, VkBufferCopy &el) { - ScopedContext scope(this, this, name, "VkBufferCopy", 0, true); + ScopedContext scope(this, name, "VkBufferCopy", 0, true); Serialise("srcOffset", el.srcOffset); Serialise("destOffset", el.destOffset); @@ -3114,7 +3114,7 @@ void Serialiser::Serialise(const char *name, VkBufferCopy &el) template<> void Serialiser::Serialise(const char *name, VkImageCopy &el) { - ScopedContext scope(this, this, name, "VkImageCopy", 0, true); + ScopedContext scope(this, name, "VkImageCopy", 0, true); Serialise("srcSubresource", el.srcSubresource); Serialise("srcOffset", el.srcOffset); @@ -3126,7 +3126,7 @@ void Serialiser::Serialise(const char *name, VkImageCopy &el) template<> void Serialiser::Serialise(const char *name, VkImageBlit &el) { - ScopedContext scope(this, this, name, "VkImageBlit", 0, true); + ScopedContext scope(this, name, "VkImageBlit", 0, true); Serialise("srcSubresource", el.srcSubresource); Serialise("srcOffset", el.srcOffset); @@ -3139,7 +3139,7 @@ void Serialiser::Serialise(const char *name, VkImageBlit &el) template<> void Serialiser::Serialise(const char *name, VkImageResolve &el) { - ScopedContext scope(this, this, name, "VkImageResolve", 0, true); + ScopedContext scope(this, name, "VkImageResolve", 0, true); Serialise("srcSubresource", el.srcSubresource); Serialise("srcOffset", el.srcOffset); @@ -3151,7 +3151,7 @@ void Serialiser::Serialise(const char *name, VkImageResolve &el) template<> void Serialiser::Serialise(const char *name, VkRect2D &el) { - ScopedContext scope(this, this, name, "VkRect2D", 0, true); + ScopedContext scope(this, name, "VkRect2D", 0, true); Serialise("offset", el.offset); Serialise("extent", el.extent); @@ -3160,7 +3160,7 @@ void Serialiser::Serialise(const char *name, VkRect2D &el) template<> void Serialiser::Serialise(const char *name, VkRect3D &el) { - ScopedContext scope(this, this, name, "VkRect3D", 0, true); + ScopedContext scope(this, name, "VkRect3D", 0, true); Serialise("offset", el.offset); Serialise("extent", el.extent); @@ -3169,7 +3169,7 @@ void Serialiser::Serialise(const char *name, VkRect3D &el) template<> void Serialiser::Serialise(const char *name, VkSwapChainCreateInfoWSI &el) { - ScopedContext scope(this, this, name, "VkSwapChainCreateInfoWSI", 0, true); + ScopedContext scope(this, name, "VkSwapChainCreateInfoWSI", 0, true); RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_SWAP_CHAIN_CREATE_INFO_WSI); Serialise("sType", el.sType); diff --git a/renderdoc/driver/vulkan/vk_manager.cpp b/renderdoc/driver/vulkan/vk_manager.cpp index b18ffa095..d7c481308 100644 --- a/renderdoc/driver/vulkan/vk_manager.cpp +++ b/renderdoc/driver/vulkan/vk_manager.cpp @@ -30,7 +30,7 @@ VulkanResourceManager *VulkanResourceManager::m_Inst = NULL; template<> void Serialiser::Serialise(const char *name, ImageRegionState &el) { - ScopedContext scope(this, this, name, "ImageRegionState", 0, true); + ScopedContext scope(this, name, "ImageRegionState", 0, true); Serialise("range", el.range); Serialise("prevstate", el.prevstate); diff --git a/renderdoc/serialise/serialiser.cpp b/renderdoc/serialise/serialiser.cpp index e92f4c486..9b2fbdbf3 100644 --- a/renderdoc/serialise/serialiser.cpp +++ b/renderdoc/serialise/serialiser.cpp @@ -1434,17 +1434,6 @@ void Serialiser::DebugPrint(const char *fmt, ...) m_DebugText += GetIndent(); m_DebugText += tmpBuf; - -#ifdef DEBUG_TEXT_SERIALISER - FILE *f = FileIO::fopen(m_Filename.c_str(), "ab"); - - if(f) - { - FileIO::fwrite(tmpBuf, 1, strlen(tmpBuf), f); - - FileIO::fclose(f); - } -#endif } uint32_t Serialiser::PushContext(const char *name, uint32_t chunkIdx, bool smallChunk) diff --git a/renderdoc/serialise/serialiser.h b/renderdoc/serialise/serialiser.h index 1f46f34e8..126355e1c 100644 --- a/renderdoc/serialise/serialiser.h +++ b/renderdoc/serialise/serialiser.h @@ -152,7 +152,6 @@ class Serialiser NONE = 0, READING, WRITING, - DEBUGWRITING, }; enum SerialiserError @@ -720,39 +719,17 @@ template<> void Serialiser::ReadInto(float &f); class ScopedContext { public: - ScopedContext(Serialiser *s, Serialiser *debugser, const char *n, const char *t, uint32_t i, bool smallChunk) + ScopedContext(Serialiser *s, const char *n, const char *t, uint32_t i, bool smallChunk) : m_Idx(i), m_Ser(s), m_Ended(false) -#ifdef DEBUG_TEXT_SERIALISER - , m_DebugSer(debugser) -#endif { m_Name = string(n) + " = " + t; m_Ser->PushContext(m_Name.c_str(), m_Idx, smallChunk); - -#ifdef DEBUG_TEXT_SERIALISER - if(m_DebugSer) - { - m_DebugSer->DebugLock(); - m_DebugSer->PushContext(m_Name.c_str(), m_Idx, smallChunk); - } -#endif } - ScopedContext(Serialiser *s, Serialiser *debugser, const char *n, uint32_t i, bool smallChunk) + ScopedContext(Serialiser *s, const char *n, uint32_t i, bool smallChunk) : m_Idx(i), m_Ser(s), m_Ended(false) -#ifdef DEBUG_TEXT_SERIALISER - , m_DebugSer(debugser) -#endif { m_Name = n; m_Ser->PushContext(m_Name.c_str(), m_Idx, smallChunk); - -#ifdef DEBUG_TEXT_SERIALISER - if(m_DebugSer) - { - m_DebugSer->DebugLock(); - m_DebugSer->PushContext(m_Name.c_str(), m_Idx, smallChunk); - } -#endif } ~ScopedContext() { @@ -769,9 +746,6 @@ class ScopedContext std::string m_Name; uint32_t m_Idx; Serialiser *m_Ser; -#ifdef DEBUG_TEXT_SERIALISER - Serialiser *m_DebugSer; -#endif bool m_Ended; @@ -781,33 +755,12 @@ class ScopedContext m_Ser->PopContext(m_Name.c_str(), m_Idx); -#ifdef DEBUG_TEXT_SERIALISER - if(m_DebugSer) - { - m_DebugSer->PopContext(m_Name.c_str(), m_Idx); - m_DebugSer->DebugUnlock(); - } -#endif - m_Ended = true; } }; -#ifdef DEBUG_TEXT_SERIALISER -#define SCOPED_SERIALISE_CONTEXT(n) ScopedContext scope(m_pSerialiser, m_pDebugSerialiser, GetChunkName(n), n, false); -#define SCOPED_SERIALISE_SMALL_CONTEXT(n) ScopedContext scope(m_pSerialiser, m_pDebugSerialiser, GetChunkName(n), n, true); - -#define SERIALISE_ELEMENT(type, name, inValue) type name; if(m_State >= WRITING) name = (inValue); m_pSerialiser->Serialise(#name, name); m_pDebugSerialiser->Serialise(#name, name); -#define SERIALISE_ELEMENT_OPT(type, name, inValue, Condition) type name = type(); if(Condition) { if(m_State >= WRITING) name = (inValue); m_pSerialiser->Serialise(#name, name); m_pDebugSerialiser->Serialise(#name, name); } -#define SERIALISE_ELEMENT_ARR(type, name, inValues, count) type *name = new type[count]; for(size_t serialiseIdx=0; serialiseIdx < count; serialiseIdx++) { if(m_State >= WRITING) name[serialiseIdx] = (inValues)[serialiseIdx]; m_pSerialiser->Serialise(#name, name[serialiseIdx]); m_pDebugSerialiser->Serialise(#name, name[serialiseIdx]); } -#define SERIALISE_ELEMENT_ARR_OPT(type, name, inValues, count, Condition) type *name = NULL; if(Condition) { name = new type[count]; for(size_t serialiseIdx=0; serialiseIdx < count; serialiseIdx++) { if(m_State >= WRITING) name[serialiseIdx] = (inValues)[serialiseIdx]; m_pSerialiser->Serialise(#name, name[serialiseIdx]); m_pDebugSerialiser->Serialise(#name, name[serialiseIdx]); } } -#define SERIALISE_ELEMENT_PTR(type, name, inValue) type name; if(inValue && m_State >= WRITING) name = *(inValue); m_pSerialiser->Serialise(#name, name); m_pDebugSerialiser->Serialise(#name, name); -#define SERIALISE_ELEMENT_PTR_OPT(type, name, inValue, Condition) type name; if(Condition) { if(inValue && m_State >= WRITING) name = *(inValue); m_pSerialiser->Serialise(#name, name); m_pDebugSerialiser->Serialise(#name, name); } -#define SERIALISE_ELEMENT_BUF(type, name, inBuf, Len) type name = (type)NULL; if(m_State >= WRITING) name = (type)(inBuf); size_t CONCAT(buflen, __LINE__) = Len; m_pSerialiser->SerialiseBuffer(#name, name, CONCAT(buflen, __LINE__)); m_pDebugSerialiser->SerialiseBuffer(#name, name, CONCAT(buflen, __LINE__)); -#define SERIALISE_ELEMENT_BUF_OPT(type, name, inBuf, Len, Condition) type name = (type)NULL; if(Condition) { if(m_State >= WRITING) name = (type)(inBuf); size_t CONCAT(buflen, __LINE__) = Len; m_pSerialiser->SerialiseBuffer(#name, name, CONCAT(buflen, __LINE__)); m_pDebugSerialiser->SerialiseBuffer(#name, name, CONCAT(buflen, __LINE__)); } -#else -#define SCOPED_SERIALISE_CONTEXT(n) ScopedContext scope(m_pSerialiser, NULL, GetChunkName(n), n, false); -#define SCOPED_SERIALISE_SMALL_CONTEXT(n) ScopedContext scope(m_pSerialiser, NULL, GetChunkName(n), n, true); +#define SCOPED_SERIALISE_CONTEXT(n) ScopedContext scope(m_pSerialiser, GetChunkName(n), n, false); +#define SCOPED_SERIALISE_SMALL_CONTEXT(n) ScopedContext scope(m_pSerialiser, GetChunkName(n), n, true); #define SERIALISE_ELEMENT(type, name, inValue) type name; if(m_State >= WRITING) name = (inValue); m_pSerialiser->Serialise(#name, name); #define SERIALISE_ELEMENT_OPT(type, name, inValue, Condition) type name = type(); if(Condition) { if(m_State >= WRITING) name = (inValue); m_pSerialiser->Serialise(#name, name); } @@ -817,7 +770,6 @@ class ScopedContext #define SERIALISE_ELEMENT_PTR_OPT(type, name, inValue, Condition) type name; if(Condition) { if(inValue && m_State >= WRITING) name = *(inValue); m_pSerialiser->Serialise(#name, name); } #define SERIALISE_ELEMENT_BUF(type, name, inBuf, Len) type name = (type)NULL; if(m_State >= WRITING) name = (type)(inBuf); size_t CONCAT(buflen, __LINE__) = Len; m_pSerialiser->SerialiseBuffer(#name, name, CONCAT(buflen, __LINE__)); #define SERIALISE_ELEMENT_BUF_OPT(type, name, inBuf, Len, Condition) type name = (type)NULL; if(Condition) { if(m_State >= WRITING) name = (type)(inBuf); size_t CONCAT(buflen, __LINE__) = Len; m_pSerialiser->SerialiseBuffer(#name, name, CONCAT(buflen, __LINE__)); } -#endif // forward declare generic pointer version to void* template