diff options
21 files changed, 140 insertions, 132 deletions
diff --git a/src/Runtime/Qt3DSRuntimeStatic/Qt3DSRuntimeStatic.pro b/src/Runtime/Qt3DSRuntimeStatic/Qt3DSRuntimeStatic.pro index 73eb9950..9d5d2a01 100644 --- a/src/Runtime/Qt3DSRuntimeStatic/Qt3DSRuntimeStatic.pro +++ b/src/Runtime/Qt3DSRuntimeStatic/Qt3DSRuntimeStatic.pro @@ -160,6 +160,7 @@ SOURCES += \ HEADERS += \ ../Source/foundation/ConvertUTF.h \ ../Source/foundation/FileTools.h \ + ../Source/foundation/StringTools.h \ ../Source/foundation/IOStreams.h \ ../Source/foundation/Qt3DSLogging.h \ ../Source/foundation/Qt3DSFoundation.h \ @@ -320,7 +321,6 @@ HEADERS += \ ../Source/runtimerender/Qt3DSRenderShaderCodeGeneratorV2.h \ ../Source/runtimerender/Qt3DSRenderShaderKeys.h \ ../Source/runtimerender/Qt3DSRenderShadowMap.h \ - ../Source/runtimerender/Qt3DSRenderString.h \ ../Source/runtimerender/Qt3DSRenderSubpresentation.h \ ../Source/runtimerender/Qt3DSRenderSubPresentationHelper.h \ ../Source/runtimerender/Qt3DSRenderTaggedPointer.h \ diff --git a/src/Runtime/Source/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp b/src/Runtime/Source/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp index 40b3ab02..d225d0ed 100644 --- a/src/Runtime/Source/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp +++ b/src/Runtime/Source/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp @@ -32,7 +32,7 @@ #include "Qt3DSRenderUIPSharedTranslation.h" #include "Qt3DSRenderBufferManager.h" #include "foundation/SerializationTypes.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "foundation/FileTools.h" #include "Qt3DSHash.h" #include "Qt3DSRenderPlugin.h" @@ -45,6 +45,8 @@ #include "Qt3DSRenderPathSubPath.h" #include "Qt3DSRenderPathManager.h" +using namespace qt3ds::foundation; + namespace Q3DStudio { enum ExtendedAttributes { ATTRIBUTE_NONE = 0, @@ -1230,7 +1232,7 @@ struct SDynamicObjectTranslatorContext : public STranslatorContext typedef nvhash_map<Q3DStudio::INT32, SEffectPropertyEntry> THashToOffsetMap; THashToOffsetMap m_PropertyHashes; NVAllocatorCallback &m_Allocator; - CRenderString m_Workspace; + Qt3DSString m_Workspace; SDynamicObjectTranslatorContext(NVAllocatorCallback &inCallback) : m_PropertyHashes(inCallback, "SEffectTranslatorContext::PropertyHashes") , m_Allocator(inCallback) @@ -1239,7 +1241,7 @@ struct SDynamicObjectTranslatorContext : public STranslatorContext ~SDynamicObjectTranslatorContext() {} void AddEffectExtendedProperty(const qt3ds::render::dynamic::SPropertyDefinition &thePropDef, const char *inExtension, Q3DStudio::EAttributeType inType, - CRenderString &ioStringBuilder, QT3DSU32 inOffset, QT3DSU32 dataOffset) + Qt3DSString &ioStringBuilder, QT3DSU32 inOffset, QT3DSU32 dataOffset) { ioStringBuilder.fromUtf8(thePropDef.m_Name.c_str()); ioStringBuilder.append(inExtension); @@ -1251,7 +1253,7 @@ struct SDynamicObjectTranslatorContext : public STranslatorContext void BuildPropertyHashes(NVConstDataRef<qt3ds::render::dynamic::SPropertyDefinition> inProperties) { if (m_PropertyHashes.size() == 0) { - qt3ds::render::CRenderString theNameBuilder; + qt3ds::foundation::Qt3DSString theNameBuilder; for (QT3DSU32 idx = 0, end = inProperties.size(); idx < end; ++idx) { const qt3ds::render::dynamic::SPropertyDefinition &thePropDef = inProperties[idx]; switch (thePropDef.m_DataType) { diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderString.h b/src/Runtime/Source/foundation/StringTools.h index 9321b4b9..43324b46 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderString.h +++ b/src/Runtime/Source/foundation/StringTools.h @@ -39,7 +39,7 @@ #include "EASTL/string.h" namespace qt3ds { -namespace render { +namespace foundation { class Qt3DSStringUtils { public: @@ -165,34 +165,34 @@ public: } }; -class CRenderString { +class Qt3DSString { public: - inline CRenderString() {} + inline Qt3DSString() {} - CRenderString(QChar c) : m_string(QString(c)) {} + Qt3DSString(QChar c) : m_string(QString(c)) {} - CRenderString(int size, QChar c) : m_string(size, c) {} + Qt3DSString(int size, QChar c) : m_string(size, c) {} - inline CRenderString(QLatin1String latin1) + inline Qt3DSString(QLatin1String latin1) : m_string(latin1) {} - explicit CRenderString(const QChar *unicode, int size = -1) + explicit Qt3DSString(const QChar *unicode, int size = -1) : m_string(unicode,size) {} - inline CRenderString(const QString &str) Q_DECL_NOTHROW + inline Qt3DSString(const QString &str) Q_DECL_NOTHROW : m_string(str) {} - inline CRenderString(const CRenderString &str) Q_DECL_NOTHROW + inline Qt3DSString(const Qt3DSString &str) Q_DECL_NOTHROW : m_string(str.m_string) {} - ~CRenderString() {} + ~Qt3DSString() {} inline operator QString() const { return m_string; } - inline void operator=(const CRenderString &text) + inline void operator=(const Qt3DSString &text) { m_string = text.m_string; m_isDirty = true; @@ -205,9 +205,9 @@ public: } // QString method wrappers - static inline CRenderString fromUtf8(const char *str, int size = -1) + static inline Qt3DSString fromUtf8(const char *str, int size = -1) { - return CRenderString(QString::fromUtf8(str, size)); + return Qt3DSString(QString::fromUtf8(str, size)); } typedef int size_type; @@ -292,14 +292,14 @@ public: return !operator< (rhs); } - inline CRenderString& operator+=(const QString &rhs) + inline Qt3DSString& operator+=(const QString &rhs) { m_string += rhs; m_isDirty = true; return *this; } - inline CRenderString& operator+=(const char *s) + inline Qt3DSString& operator+=(const char *s) { m_string += s; m_isDirty = true; @@ -365,32 +365,32 @@ public: m_isDirty = true; } - inline CRenderString &insert(int i, QChar c) + inline Qt3DSString &insert(int i, QChar c) { m_string.insert(i,c); m_isDirty = true; return *this; } - inline CRenderString &insert(int i, const QChar *uc, int len) + inline Qt3DSString &insert(int i, const QChar *uc, int len) { m_string.insert(i,uc, len); m_isDirty = true; return *this; } - inline CRenderString &insert(int i, const QString &s) + inline Qt3DSString &insert(int i, const QString &s) { m_string.insert(i,s); m_isDirty = true; return *this; } - inline CRenderString &insert(int i, const QStringRef &s) + inline Qt3DSString &insert(int i, const QStringRef &s) { m_string.insert(i,s); m_isDirty = true; return *this; } - inline CRenderString &insert(int i, QLatin1String s) + inline Qt3DSString &insert(int i, QLatin1String s) { m_string.insert(i,s); m_isDirty = true; @@ -406,35 +406,35 @@ public: return m_string.length(); } - inline CRenderString &append(QChar c) + inline Qt3DSString &append(QChar c) { m_string.append(c); m_isDirty = true; return *this; } - inline CRenderString &append(const QChar *uc, int len) + inline Qt3DSString &append(const QChar *uc, int len) { m_string.append(uc, len); m_isDirty = true; return *this; } - inline CRenderString &append(const QString &s) + inline Qt3DSString &append(const QString &s) { m_string.append(s); m_isDirty = true; return *this; } - inline CRenderString &append(const QStringRef &s) + inline Qt3DSString &append(const QStringRef &s) { m_string.append(s); m_isDirty = true; return *this; } - inline CRenderString &append(QLatin1String s) + inline Qt3DSString &append(QLatin1String s) { m_string.append(s); m_isDirty = true; @@ -516,7 +516,7 @@ public: assign(*text.c_str()); } - inline CRenderString &append(QString::iterator first, + inline Qt3DSString &append(QString::iterator first, QString::iterator last) { Qt3DSStringUtils::append(m_string, first, last); @@ -524,7 +524,7 @@ public: return *this; } - inline CRenderString &append(QString::const_iterator first, + inline Qt3DSString &append(QString::const_iterator first, QString::const_iterator last) { Qt3DSStringUtils::append(m_string, first, last); @@ -532,21 +532,21 @@ public: return *this; } - inline CRenderString &append(const char *text, int size) + inline Qt3DSString &append(const char *text, int size) { m_string.append(QString::fromUtf8(text, size)); m_isDirty = true; return *this; } - inline CRenderString &append(const char *text) + inline Qt3DSString &append(const char *text) { m_string.append(QString::fromUtf8(text)); m_isDirty = true; return *this; } - inline CRenderString &replace(QString::iterator replaceBegin, + inline Qt3DSString &replace(QString::iterator replaceBegin, QString::iterator replaceEnd, const char *replaceText, int len) { @@ -554,7 +554,7 @@ public: QString::fromUtf8(replaceText, len)); } - inline CRenderString &replace(QString::iterator replaceBegin, + inline Qt3DSString &replace(QString::iterator replaceBegin, QString::iterator replaceEnd, const QString &replaceText) { @@ -565,7 +565,7 @@ public: return *this; } - inline CRenderString &replace(QString::const_iterator replaceBegin, + inline Qt3DSString &replace(QString::const_iterator replaceBegin, QString::const_iterator replaceEnd, const QString &replaceText) { diff --git a/src/Runtime/Source/runtimerender/Qt3DSRender.h b/src/Runtime/Source/runtimerender/Qt3DSRender.h index 44729682..e07dc6ec 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRender.h +++ b/src/Runtime/Source/runtimerender/Qt3DSRender.h @@ -43,6 +43,8 @@ namespace foundation { struct SDataReader; struct SPtrOffsetMap; class IPerfTimer; + class Qt3DSString; + class Qt3DSStringUtils; } namespace intrinsics { } @@ -160,6 +162,8 @@ namespace render { using qt3ds::foundation::SStrRemapMap; using qt3ds::foundation::SWriteBuffer; using qt3ds::foundation::SDataReader; + using qt3ds::foundation::Qt3DSString; + using qt3ds::foundation::Qt3DSStringUtils; using qt3ds::render::NVRenderPtrPtrMap; using qt3ds::foundation::CStrTableOrDataRef; using qt3ds::foundation::SPtrOffsetMap; @@ -197,7 +201,6 @@ namespace render { class IRefCountedInputStream; class IEffectSystem; class IEffectSystemCore; - class CRenderString; class IShaderCache; class IQt3DSRenderNodeFilter; class IRenderWidget; diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialShaderGenerator.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialShaderGenerator.cpp index 9a993705..1217de87 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialShaderGenerator.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialShaderGenerator.cpp @@ -274,7 +274,7 @@ struct SShaderGeneratorGeneratedShader struct SShaderGenerator : public ICustomMaterialShaderGenerator { - typedef CRenderString TStrType; + typedef Qt3DSString TStrType; typedef nvhash_map<NVRenderShaderProgram *, NVScopedRefCounted<SShaderGeneratorGeneratedShader>> TProgramToShaderMap; typedef eastl::pair<size_t, NVScopedRefCounted<SShaderLightProperties>> @@ -493,7 +493,7 @@ struct SShaderGenerator : public ICustomMaterialShaderGenerator { qt3ds::render::IDynamicObjectSystem &theDynamicSystem( m_RenderContext.GetDynamicObjectSystem()); - CRenderString theShaderBuffer; + Qt3DSString theShaderBuffer; theDynamicSystem.GetShaderSource( m_RenderContext.GetStringTable().RegisterStr(inShaderPathName), theShaderBuffer); @@ -1027,7 +1027,7 @@ struct SShaderGenerator : public ICustomMaterialShaderGenerator { qt3ds::render::IDynamicObjectSystem &theDynamicSystem( m_RenderContext.GetDynamicObjectSystem()); - CRenderString theShaderBuffer; + Qt3DSString theShaderBuffer; theDynamicSystem.GetShaderSource( m_RenderContext.GetStringTable().RegisterStr(inShaderPathName), theShaderBuffer); diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialSystem.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialSystem.cpp index a723c6e0..860c2e40 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialSystem.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderCustomMaterialSystem.cpp @@ -1152,7 +1152,7 @@ struct SMaterialSystem : public ICustomMaterialSystem m_CoreContext.GetDynamicObjectSystemCore().SetRenderCommands(inName, inCommands); } - CRegisteredString GetShaderCacheKey(CRenderString &inShaderKeyBuffer, const char8_t *inId, + CRegisteredString GetShaderCacheKey(Qt3DSString &inShaderKeyBuffer, const char8_t *inId, const char8_t *inProgramMacro, const dynamic::SDynamicShaderProgramFlags &inFlags) { @@ -1182,7 +1182,7 @@ struct SMaterialSystem : public ICustomMaterialSystem m_Context->GetCustomMaterialShaderGenerator()); // generate key - CRenderString theShaderKeyBuffer; + Qt3DSString theShaderKeyBuffer; CRegisteredString theKey = GetShaderCacheKey(theShaderKeyBuffer, inCommand.m_ShaderPath, inCommand.m_ShaderDefine, inFlags); diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderDefaultMaterialShaderGenerator.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderDefaultMaterialShaderGenerator.cpp index 18c71e34..ceae91ca 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderDefaultMaterialShaderGenerator.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderDefaultMaterialShaderGenerator.cpp @@ -251,7 +251,7 @@ struct SShaderGeneratorGeneratedShader struct SShaderGenerator : public IDefaultMaterialShaderGenerator { - typedef CRenderString TStrType; + typedef Qt3DSString TStrType; typedef nvhash_map<NVRenderShaderProgram *, NVScopedRefCounted<SShaderGeneratorGeneratedShader>> TProgramToShaderMap; typedef qt3ds::foundation::nvhash_map<CRegisteredString, diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.cpp index 4970f3e3..92c337a0 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.cpp @@ -39,7 +39,7 @@ #include "foundation/FileTools.h" #include "foundation/PreAllocatedAllocator.h" #include "render/Qt3DSRenderShaderProgram.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "Qt3DSRenderShaderCache.h" #include "Qt3DSRenderInputStreamFactory.h" #include "Qt3DSRenderer.h" @@ -598,14 +598,14 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem IQt3DSRenderContext *m_Context; TStringClassMap m_Classes; TPathDataMap m_ExpandedFiles; - CRenderString m_ShaderKeyBuilder; + Qt3DSString m_ShaderKeyBuilder; TShaderMap m_ShaderMap; TShaderInfoMap m_ShaderInfoMap; - CRenderString m_IncludePath; - CRenderString m_IncludeSearch; - CRenderString m_VertShader; - CRenderString m_FragShader; - CRenderString m_GeometryShader; + Qt3DSString m_IncludePath; + Qt3DSString m_IncludeSearch; + Qt3DSString m_VertShader; + Qt3DSString m_FragShader; + Qt3DSString m_GeometryShader; QString m_shaderLibraryVersion; QString m_shaderLibraryPlatformDirectory; mutable Mutex m_PropertyLoadMutex; @@ -932,35 +932,35 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem return m_CoreContext.GetStringTable().RegisterStr(m_ShaderKeyBuilder.c_str()); } - void InsertShaderHeaderInformation(CRenderString &theReadBuffer, + void InsertShaderHeaderInformation(Qt3DSString &theReadBuffer, const char8_t *inPathToEffect) override { DoInsertShaderHeaderInformation(theReadBuffer, inPathToEffect); } - void DoInsertShaderHeaderInformation(CRenderString &theReadBuffer, + void DoInsertShaderHeaderInformation(Qt3DSString &theReadBuffer, const char8_t *inPathToEffect) { // Now do search and replace for the headers - for (CRenderString::size_type thePos = theReadBuffer.indexOf(m_IncludeSearch); - thePos != CRenderString::npos; + for (Qt3DSString::size_type thePos = theReadBuffer.indexOf(m_IncludeSearch); + thePos != Qt3DSString::npos; thePos = theReadBuffer.indexOf(m_IncludeSearch, thePos + 1)) { - CRenderString::size_type theEndQuote = + Qt3DSString::size_type theEndQuote = theReadBuffer.indexOf(QLatin1Char('\"'), thePos + m_IncludeSearch.size() + 1); // Indicates an unterminated include file. - if (theEndQuote == CRenderString::npos) { + if (theEndQuote == Qt3DSString::npos) { qCCritical(INVALID_OPERATION, "Unterminated include in file: %s", inPathToEffect); theReadBuffer.clear(); break; } - CRenderString::size_type theActualBegin = thePos + m_IncludeSearch.size(); - CRenderString::iterator theIncludeBegin = theReadBuffer.begin() + theActualBegin; - CRenderString::iterator theIncludeEnd = theReadBuffer.begin() + theEndQuote; + Qt3DSString::size_type theActualBegin = thePos + m_IncludeSearch.size(); + Qt3DSString::iterator theIncludeBegin = theReadBuffer.begin() + theActualBegin; + Qt3DSString::iterator theIncludeEnd = theReadBuffer.begin() + theEndQuote; m_IncludePath.clear(); m_IncludePath.append(theIncludeBegin, theIncludeEnd); // If we haven't included the file yet this round - CRenderString theIncludeBuffer; + Qt3DSString theIncludeBuffer; DoLoadShader(m_IncludePath.c_str(), theIncludeBuffer); theReadBuffer = theReadBuffer.replace(theReadBuffer.begin() + thePos, @@ -969,7 +969,7 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem } } - void DoLoadShader(const char8_t *inPathToEffect, CRenderString &outShaderData) + void DoLoadShader(const char8_t *inPathToEffect, Qt3DSString &outShaderData) { eastl::pair<TPathDataMap::iterator, bool> theInsert = m_ExpandedFiles.insert(eastl::make_pair( @@ -1393,12 +1393,12 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem } // This just returns the custom material shader source without compiling - void GetShaderSource(CRegisteredString inPath, CRenderString &outBuffer) override + void GetShaderSource(CRegisteredString inPath, Qt3DSString &outBuffer) override { outBuffer.clear(); outBuffer.append("#define FRAGMENT_SHADER\n"); - CRenderString source; + Qt3DSString source; DoLoadShader(inPath, outBuffer); } @@ -1422,14 +1422,14 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem m_ShaderInfoMap.insert(eastl::make_pair(inPath, SDynamicObjectShaderInfo())) .first->second; if (theShaderInfo.m_IsComputeShader == false) { - CRenderString theShaderBuffer; + Qt3DSString theShaderBuffer; DoLoadShader(inPath, theShaderBuffer); if (theShaderInfo.m_HasGeomShader) theFlags.SetGeometryShaderEnabled(true); theProgram = CompileShader(inPath, theShaderBuffer.c_str(), NULL, inProgramMacro, inFeatureSet, theFlags, inForceCompilation); } else { - CRenderString theShaderBuffer; + Qt3DSString theShaderBuffer; const char8_t *shaderVersionStr = "#version 430\n"; if ((QT3DSU32)m_Context->GetRenderContext().GetRenderContextType() == NVRenderContextValues::GLES3PLUS) @@ -1477,7 +1477,7 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem GetShaderCacheKey(inPath, theProgramMacro, theFlags), inFeatureSet); SDynamicShaderProgramFlags flags(theFlags); if (!theProgram) { - CRenderString theShaderBuffer; + Qt3DSString theShaderBuffer; DoLoadShader(inPath, theShaderBuffer); SShaderVertexCodeGenerator vertexShader( m_Context->GetStringTable(), m_Allocator, @@ -1497,7 +1497,7 @@ struct SDynamicObjectSystemImpl : public IDynamicObjectSystem const char8_t *vertexSource = vertexShader.BuildShaderSource(); const char8_t *fragmentSource = fragmentShader.BuildShaderSource(); - CRenderString programBuffer; + Qt3DSString programBuffer; programBuffer.assign("#ifdef VERTEX_SHADER\n"); programBuffer.append(vertexSource); programBuffer.append("\n#endif\n"); diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.h b/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.h index b58385d4..cfe022ee 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.h +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystem.h @@ -226,7 +226,7 @@ namespace render { NVAllocatorCallback &inSceneGraphAllocator) = 0; // scan shader for #includes and insert any found" - virtual void InsertShaderHeaderInformation(CRenderString &inShader, + virtual void InsertShaderHeaderInformation(Qt3DSString &inShader, const char *inLogPath) = 0; // Set the shader data for a given path. Used when a path doesn't correspond to a file but @@ -267,7 +267,7 @@ namespace render { const dynamic::SDynamicShaderProgramFlags &inFlags, bool inForceCompilation = false) = 0; - virtual void GetShaderSource(CRegisteredString inPath, CRenderString &outSource) = 0; + virtual void GetShaderSource(CRegisteredString inPath, Qt3DSString &outSource) = 0; // Will return null in the case where a custom prepass shader isn't needed for this object // If no geom shader, then no depth prepass shader. diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystemUtil.h b/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystemUtil.h index 5d78a4c9..b00b9963 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystemUtil.h +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderDynamicObjectSystemUtil.h @@ -33,7 +33,7 @@ #include "Qt3DSRender.h" #include "foundation/StringTable.h" #include "foundation/Qt3DSAllocatorCallback.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" namespace qt3ds { namespace render { @@ -43,7 +43,7 @@ namespace render { { CStrTableOrDataRef m_StrData; IStringTable &m_StringTable; - CRenderString m_PathMapper; + Qt3DSString m_PathMapper; const char8_t *m_ProjectDir; SStringLoadRemapper(NVAllocatorCallback &alloc, CStrTableOrDataRef inData, const char8_t *inProjectDir, IStringTable &inStrTable) @@ -59,9 +59,9 @@ namespace render { struct SStringSaveRemapper { const qt3ds::render::SStrRemapMap &m_Map; - CRenderString m_RelativeBuffer; - CRenderString m_ProjectDir; - CRenderString m_FinalBuffer; + Qt3DSString m_RelativeBuffer; + Qt3DSString m_ProjectDir; + Qt3DSString m_FinalBuffer; IStringTable &m_StringTable; SStringSaveRemapper(NVAllocatorCallback &alloc, const qt3ds::render::SStrRemapMap &map, const char8_t *inProjectDir, IStringTable &inStrTable) diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderEffectSystem.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderEffectSystem.cpp index b906241c..65f52a64 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderEffectSystem.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderEffectSystem.cpp @@ -33,7 +33,7 @@ #include "Qt3DSRenderInputStreamFactory.h" #include "foundation/Qt3DSAtomic.h" #include "foundation/Qt3DSContainers.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "foundation/Qt3DSFoundation.h" #include "foundation/Qt3DSBroadcastingAllocator.h" #include "Qt3DSRenderEffect.h" @@ -283,7 +283,7 @@ struct STextureEntry } static STextureEntry CreateTextureEntry(NVRenderShaderProgram &inShader, const char *inStem, - CRenderString &inBuilder, CRenderString &inBuilder2) + Qt3DSString &inBuilder, Qt3DSString &inBuilder2) { inBuilder.assign(inStem); inBuilder.append("Info"); @@ -393,7 +393,7 @@ namespace render { void SetTexture(NVRenderShaderProgram &inShader, CRegisteredString inPropName, NVRenderTexture2D *inTexture, bool inNeedsMultiply, - CRenderString &inStringBuilder, CRenderString &inStringBuilder2, + Qt3DSString &inStringBuilder, Qt3DSString &inStringBuilder2, const SPropertyDefinition *inPropDec = NULL) { STextureEntry *theTextureEntry(NULL); @@ -505,8 +505,8 @@ struct SEffectSystem : public IEffectSystem TEffectClassMap m_EffectClasses; nvvector<CRegisteredString> m_EffectList; TContextList m_Contexts; - CRenderString m_TextureStringBuilder; - CRenderString m_TextureStringBuilder2; + Qt3DSString m_TextureStringBuilder; + Qt3DSString m_TextureStringBuilder2; TShaderMap m_ShaderMap; NVScopedRefCounted<NVRenderDepthStencilState> m_DefaultStencilState; nvvector<NVScopedRefCounted<NVRenderDepthStencilState>> m_DepthStencilStates; diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderGraphObjectSerializer.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderGraphObjectSerializer.cpp index 8fc7e5aa..358c5aad 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderGraphObjectSerializer.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderGraphObjectSerializer.cpp @@ -46,7 +46,7 @@ #include "foundation/Qt3DSContainers.h" #include "Qt3DSRenderEffectSystem.h" #include "foundation/SerializationTypes.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "foundation/FileTools.h" #include "Qt3DSRenderPluginGraphObject.h" #include "Qt3DSRenderReferencedMaterial.h" @@ -76,9 +76,9 @@ struct SSerializerWriteContext IDynamicObjectSystem &m_DynamicObjectSystem; IPathManager &m_PathManager; TObjectFileStatList &m_FileSizeStats; - CRenderString m_PathMapper; - CRenderString m_BasePath; - CRenderString m_RelativePath; + Qt3DSString m_PathMapper; + Qt3DSString m_BasePath; + Qt3DSString m_RelativePath; IStringTable &m_StringTable; SSerializerWriteContext(SPtrOffsetMap &inOffsetMap, SWriteBuffer &inWriteBuffer, const SStrRemapMap &inStrMap, QT3DSU32 inDataBlockStart, @@ -156,7 +156,7 @@ struct SSerializerReadContext : public SDataReader IDynamicObjectSystemCore &m_DynamicObjectSystem; NVDataRef<QT3DSU8> m_DataBlock; NVDataRef<QT3DSU8> m_StrTableBlock; - CRenderString m_PathMapper; + Qt3DSString m_PathMapper; const char8_t *m_ProjectDirectory; SSerializerReadContext(IPathManagerCore &inPathManager, IDynamicObjectSystemCore &inDynSystem, diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderPlugin.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderPlugin.cpp index f8c11494..e4e821f8 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderPlugin.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderPlugin.cpp @@ -36,7 +36,7 @@ #include "foundation/Qt3DSSystem.h" #include "foundation/FileTools.h" #include "render/Qt3DSRenderContext.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "Qt3DSRenderPluginPropertyValue.h" #include "Qt3DSRenderInputStreamFactory.h" @@ -450,7 +450,7 @@ struct PluginClassImpl : public IInternalPluginClass TStringIndexMap m_ComponentNameToComponentIndexMap; nvvector<TStringTypePair> m_FullPropertyList; nvvector<TRenderPluginPropertyUpdate> m_UpdateBuffer; - CRenderString m_TempString; + Qt3DSString m_TempString; QT3DSI32 m_APIVersion; QT3DSI32 mRefCount; diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCache.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCache.cpp index a5af8bb9..e568ff5d 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCache.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCache.cpp @@ -31,7 +31,7 @@ #include "render/Qt3DSRenderContext.h" #include "foundation/Qt3DSContainers.h" #include "foundation/Qt3DSAtomic.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "foundation/XML.h" #include "foundation/IOStreams.h" #include "foundation/StringConversionImpl.h" @@ -53,13 +53,13 @@ namespace { using qt3ds::render::NVRenderContextScopedProperty; const char *TessellationEnabledStr = "TessellationStageEnabled"; const char *GeometryEnabledStr = "GeometryStageEnabled"; -inline void AppendFlagValue(CRenderString &inStr, const char *flag) +inline void AppendFlagValue(Qt3DSString &inStr, const char *flag) { if (inStr.length()) inStr.append(QLatin1Char(',')); inStr.append(flag); } -inline void CacheFlagsToStr(const SShaderCacheProgramFlags &inFlags, CRenderString &inString) +inline void CacheFlagsToStr(const SShaderCacheProgramFlags &inFlags, Qt3DSString &inString) { inString.clear(); if (inFlags.IsTessellationEnabled()) @@ -73,7 +73,7 @@ struct ShaderType enum Enum { Vertex, TessControl, TessEval, Fragment, Geometry, Compute }; }; -inline ShaderType::Enum StringToShaderType(CRenderString &inShaderType) +inline ShaderType::Enum StringToShaderType(Qt3DSString &inShaderType) { ShaderType::Enum retval = ShaderType::Vertex; @@ -96,12 +96,12 @@ inline ShaderType::Enum StringToShaderType(CRenderString &inShaderType) return retval; } -inline SShaderCacheProgramFlags CacheFlagsToStr(const CRenderString &inString) +inline SShaderCacheProgramFlags CacheFlagsToStr(const Qt3DSString &inString) { SShaderCacheProgramFlags retval; - if (inString.indexOf(TessellationEnabledStr) != CRenderString::npos) + if (inString.indexOf(TessellationEnabledStr) != Qt3DSString::npos) retval.SetTessellationEnabled(true); - if (inString.indexOf(GeometryEnabledStr) != CRenderString::npos) + if (inString.indexOf(GeometryEnabledStr) != Qt3DSString::npos) retval.SetGeometryShaderEnabled(true); return retval; } @@ -128,7 +128,7 @@ size_t g_NumStringToContextValueEntries = sizeof(g_StringToContextTypeValue) / sizeof(*g_StringToContextTypeValue); inline void ContextTypeToString(qt3ds::render::NVRenderContextType inType, - CRenderString &outContextType) + Qt3DSString &outContextType) { outContextType.clear(); for (size_t idx = 0, end = g_NumStringToContextValueEntries; idx < end; ++idx) { @@ -140,7 +140,7 @@ inline void ContextTypeToString(qt3ds::render::NVRenderContextType inType, } } -inline qt3ds::render::NVRenderContextType StringToContextType(const CRenderString &inContextType) +inline qt3ds::render::NVRenderContextType StringToContextType(const Qt3DSString &inContextType) { qt3ds::render::NVRenderContextType retval; char tempBuffer[128]; @@ -152,7 +152,7 @@ inline qt3ds::render::NVRenderContextType StringToContextType(const CRenderStrin do { pos = int(inContextType.indexOf(QLatin1Char('|'), lastpos)); - if (pos == CRenderString::npos) + if (pos == Qt3DSString::npos) pos = int(inContextType.size()); { @@ -168,7 +168,7 @@ inline qt3ds::render::NVRenderContextType StringToContextType(const CRenderStrin // iterate past the bar ++pos; lastpos = pos; - } while (pos < inContextType.size() && pos != CRenderString::npos); + } while (pos < inContextType.size() && pos != Qt3DSString::npos); return retval; } @@ -229,15 +229,15 @@ struct ShaderCache : public IShaderCache NVRenderContext &m_RenderContext; IPerfTimer &m_PerfTimer; TShaderMap m_Shaders; - CRenderString m_CacheFilePath; - CRenderString m_VertexCode; - CRenderString m_TessCtrlCode; - CRenderString m_TessEvalCode; - CRenderString m_GeometryCode; - CRenderString m_FragmentCode; - CRenderString m_InsertStr; - CRenderString m_FlagString; - CRenderString m_ContextTypeString; + Qt3DSString m_CacheFilePath; + Qt3DSString m_VertexCode; + Qt3DSString m_TessCtrlCode; + Qt3DSString m_TessEvalCode; + Qt3DSString m_GeometryCode; + Qt3DSString m_FragmentCode; + Qt3DSString m_InsertStr; + Qt3DSString m_FlagString; + Qt3DSString m_ContextTypeString; SShaderCacheKey m_TempKey; NVScopedRefCounted<IDOMWriter> m_ShaderCache; @@ -327,7 +327,7 @@ struct ShaderCache : public IShaderCache } } - void AddShaderPreprocessor(CRenderString &str, CRegisteredString inKey, + void AddShaderPreprocessor(Qt3DSString &str, CRegisteredString inKey, ShaderType::Enum shaderType, NVConstDataRef<SShaderPreprocessorFeature> inFeatures) { @@ -622,12 +622,12 @@ struct ShaderCache : public IShaderCache QT3DSU32 theAttValue = 0; theReader->Att("cache_version", theAttValue); if (theAttValue == IShaderCache::GetShaderVersion()) { - CRenderString loadVertexData; - CRenderString loadFragmentData; - CRenderString loadTessControlData; - CRenderString loadTessEvalData; - CRenderString loadGeometryData; - CRenderString shaderTypeString; + Qt3DSString loadVertexData; + Qt3DSString loadFragmentData; + Qt3DSString loadTessControlData; + Qt3DSString loadTessEvalData; + Qt3DSString loadGeometryData; + Qt3DSString shaderTypeString; IStringTable &theStringTable(m_RenderContext.GetStringTable()); for (bool success = theReader->MoveToFirstChild(); success; success = theReader->MoveToNextSibling()) { diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGenerator.h b/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGenerator.h index 80cbaaae..d68a3699 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGenerator.h +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGenerator.h @@ -35,7 +35,7 @@ #include "EASTL/string.h" #include "foundation/StringTable.h" #include "render/Qt3DSRenderBaseTypes.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" namespace qt3ds { namespace render { @@ -69,7 +69,7 @@ namespace render { TStrTableStrMap m_ConstantBuffers; TConstantBufferParamArray m_ConstantBufferParams; TStrTableStrMap m_Attributes; - CRenderString m_FinalShaderBuilder; + Qt3DSString m_FinalShaderBuilder; TStrType m_CodeBuilder; qt3ds::render::NVRenderContextType m_RenderContextType; diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGeneratorV2.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGeneratorV2.cpp index 3aa03eae..cfdf47ae 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGeneratorV2.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderShaderCodeGeneratorV2.cpp @@ -52,8 +52,8 @@ struct SStageGeneratorBase : public IShaderStageGenerator TStrTableStrMap m_Uniforms; TStrTableStrMap m_ConstantBuffers; TConstantBufferParamArray m_ConstantBufferParams; - CRenderString m_CodeBuilder; - CRenderString m_FinalBuilder; + Qt3DSString m_CodeBuilder; + Qt3DSString m_FinalBuilder; ShaderGeneratorStages::Enum m_Stage; TShaderGeneratorStageFlags m_EnabledStages; QStringList m_addedFunctions; diff --git a/src/Runtime/Source/runtimerender/Qt3DSRenderUIPLoader.cpp b/src/Runtime/Source/runtimerender/Qt3DSRenderUIPLoader.cpp index 6ab4047f..3fb7b53f 100644 --- a/src/Runtime/Source/runtimerender/Qt3DSRenderUIPLoader.cpp +++ b/src/Runtime/Source/runtimerender/Qt3DSRenderUIPLoader.cpp @@ -60,7 +60,7 @@ #include "EASTL/string.h" #include "foundation/StrConvertUTF.h" #include "Qt3DSRenderEffectSystem.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "foundation/FileTools.h" #include "Qt3DSRenderDynamicObjectSystemCommands.h" #include "EASTL/map.h" @@ -113,7 +113,7 @@ using qt3ds::render::SCustomMaterial; using qt3ds::render::GraphObjectTypes; using qt3ds::render::NodeFlags; using qt3ds::foundation::CRegisteredString; -using qt3ds::render::CRenderString; +using qt3ds::foundation::Qt3DSString; using qt3ds::foundation::CFileTools; using qt3ds::render::SReferencedMaterial; using qt3ds::render::IUIPReferenceResolver; @@ -506,7 +506,7 @@ struct SRenderUIPLoader : public IDOMReferenceResolver TStrType m_TempParseString; IEffectSystem &m_EffectSystem; const char8_t *m_PresentationDir; - CRenderString m_PathString; + Qt3DSString m_PathString; qt3ds::render::IRenderPluginManager &m_RenderPluginManager; qt3ds::render::ICustomMaterialSystem &m_CustomMaterialSystem; qt3ds::render::IDynamicObjectSystem &m_DynamicObjectSystem; @@ -1971,9 +1971,9 @@ void qt3ds::render::IUIPLoader::CreateEffectClassFromMetaEffect( inFoundation.getAllocator(), "qt3ds::render::IUIPLoader::CreateEffectClassFromMetaEffect"); nvvector<CRegisteredString> theEnumNames( inFoundation.getAllocator(), "qt3ds::render::IUIPLoader::CreateEffectClassFromMetaEffect"); - CRenderString theConvertStr; - CRenderString theConvertShaderTypeStr; - CRenderString theConvertShaderVersionStr; + Qt3DSString theConvertStr; + Qt3DSString theConvertShaderTypeStr; + Qt3DSString theConvertShaderVersionStr; for (QT3DSU32 idx = 0, end = inMetaDataEffect.m_Properties.size(); idx < end; ++idx) thePropertyDeclarations.push_back( @@ -2034,9 +2034,9 @@ void qt3ds::render::IUIPLoader::CreateMaterialClassFromMetaMaterial( nvvector<CRegisteredString> theEnumNames( inFoundation.getAllocator(), "qt3ds::render::IUIPLoader::CreateMaterialClassFromMetaMaterial"); - CRenderString theConvertStr; - CRenderString theConvertShaderTypeStr; - CRenderString theConvertShaderVersionStr; + Qt3DSString theConvertStr; + Qt3DSString theConvertShaderTypeStr; + Qt3DSString theConvertShaderVersionStr; for (QT3DSU32 idx = 0, end = inMetaDataMaterial.m_Properties.size(); idx < end; ++idx) thePropertyDeclarations.push_back( SPropertyDeclaration(inMetaDataMaterial.m_Properties[idx].m_Name.c_str(), diff --git a/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.cpp b/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.cpp index 3d7c6ff5..2e1e6a07 100644 --- a/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.cpp +++ b/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.cpp @@ -31,12 +31,13 @@ #include "Qt3DSRenderDynamicObject.h" #include "Qt3DSRenderDynamicObjectSystem.h" #include "foundation/FileTools.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include <QtCore/qdir.h> using namespace qt3ds; using namespace qt3ds::render; +using namespace qt3ds::foundation; SDynamicObject::SDynamicObject(GraphObjectTypes::Enum inType, CRegisteredString inObjName, QT3DSU32 inDSByteSize, QT3DSU32 thisObjSize) @@ -104,6 +105,7 @@ void SDynamicObject::SetPropertyValue(const dynamic::SPropertyDefinition &inDefi QT3DS_ASSERT(inDefinition.m_DataType == NVRenderShaderDataTypes::NVRenderTexture2DPtr); SetPropertyValueT(inDefinition, inValue); } + template <typename TStrType> void SDynamicObject::SetStrPropertyValueT(dynamic::SPropertyDefinition &inDefinition, const char8_t *inValue, const char8_t *inProjectDir, @@ -143,7 +145,7 @@ void SDynamicObject::SetStrPropertyValueT(dynamic::SPropertyDefinition &inDefini void SDynamicObject::SetPropertyValue(const dynamic::SPropertyDefinition &inDefinition, const char8_t *inValue, const char8_t *inProjectDir, - CRenderString &ioWorkspace, IStringTable &inStrTable) + Qt3DSString &ioWorkspace, IStringTable &inStrTable) { SetStrPropertyValueT(const_cast<dynamic::SPropertyDefinition &>(inDefinition), inValue, inProjectDir, ioWorkspace, inStrTable); diff --git a/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.h b/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.h index a275e572..92ab3b2a 100644 --- a/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.h +++ b/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderDynamicObject.h @@ -34,6 +34,7 @@ #include "Qt3DSRenderGraphObject.h" #include "Qt3DSRenderNode.h" #include "EASTL/string.h" +#include "StringTools.h" namespace qt3ds { namespace render { @@ -92,7 +93,7 @@ namespace render { void SetPropertyValue(const dynamic::SPropertyDefinition &inDefinition, const char8_t *inValue, const char8_t *inProjectDir, - CRenderString &ioWorkspace, IStringTable &inStrTable); + Qt3DSString &ioWorkspace, IStringTable &inStrTable); void SetPropertyValue(const dynamic::SPropertyDefinition &inDefinition, const char8_t *inValue, const char8_t *inProjectDir, diff --git a/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderEffect.cpp b/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderEffect.cpp index 97cddd9d..f074b6b1 100644 --- a/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderEffect.cpp +++ b/src/Runtime/Source/runtimerender/graphobjects/Qt3DSRenderEffect.cpp @@ -31,7 +31,7 @@ #include "Qt3DSRenderEffectSystem.h" #include "foundation/Qt3DSVec2.h" #include "foundation/Qt3DSVec3.h" -#include "Qt3DSRenderString.h" +#include "StringTools.h" #include "foundation/FileTools.h" using namespace qt3ds::render; diff --git a/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSVertexPipelineImpl.h b/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSVertexPipelineImpl.h index 439f2467..e86300b0 100644 --- a/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSVertexPipelineImpl.h +++ b/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSVertexPipelineImpl.h @@ -58,7 +58,7 @@ namespace render { IMaterialShaderGenerator &m_MaterialGenerator; IShaderProgramGenerator &m_ProgramGenerator; IStringTable &m_StringTable; - CRenderString m_TempString; + Qt3DSString m_TempString; TGenerationFlags m_GenerationFlags; bool m_Wireframe; |