diff --git a/src/Layers/xrRender/Blender_BmmD.cpp b/src/Layers/xrRender/Blender_BmmD.cpp index 413ab68928b..47c8a3e34e8 100644 --- a/src/Layers/xrRender/Blender_BmmD.cpp +++ b/src/Layers/xrRender/Blender_BmmD.cpp @@ -91,7 +91,7 @@ void CBlender_BmmD::Compile(CBlender_Compile& C) else { if (C.L_textures.size() < 2) - xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader, base tex: %s", C.L_textures[0].c_str()); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader, base tex: %s", *C.L_textures[0]); switch (C.iElement) { case SE_R1_NORMAL_HQ: diff --git a/src/Layers/xrRender/Blender_Lm(EbB).cpp b/src/Layers/xrRender/Blender_Lm(EbB).cpp index e2e5bcac186..612e8221cb1 100644 --- a/src/Layers/xrRender/Blender_Lm(EbB).cpp +++ b/src/Layers/xrRender/Blender_Lm(EbB).cpp @@ -87,7 +87,7 @@ void CBlender_LmEbB::Compile(CBlender_Compile& C) else { if (C.L_textures.size() < 2) - xrDebug::Fatal(DEBUG_INFO, "Not enough textures for shader, base tex: %s", C.L_textures[0].c_str()); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader, base tex: %s", *C.L_textures[0]); switch (C.iElement) { case SE_R1_NORMAL_HQ: @@ -113,7 +113,7 @@ void CBlender_LmEbB::Compile(CBlender_Compile& C) C.r_Pass("lmapE", "lmapE", TRUE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_Sampler("s_env", oT2_Name, false, D3DTADDRESS_CLAMP); C.r_End(); // } @@ -137,7 +137,7 @@ void CBlender_LmEbB::Compile(CBlender_Compile& C) C.r_Pass("lmap_l", "lmap_l", FALSE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); break; } @@ -155,7 +155,7 @@ void CBlender_LmEbB::Compile(CBlender_Compile& C) C.r_Pass("lmapE", "lmapE", TRUE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_Sampler("s_env", oT2_Name, false, D3DTADDRESS_CLAMP); C.r_End(); } @@ -176,7 +176,7 @@ void CBlender_LmEbB::Compile(CBlender_Compile& C) C.r_dx10Texture("s_lmap", C.L_textures[1]); C.r_dx10Sampler("smp_linear"); // C.r_Sampler_clf ("s_hemi", *C.L_textures[2]); - C.r_dx10Texture("s_hemi", C.L_textures[2].c_str()); + C.r_dx10Texture("s_hemi", *C.L_textures[2]); C.r_dx10Sampler("smp_rtlinear"); // C.r_Sampler ("s_env", oT2_Name,false,D3DTADDRESS_CLAMP); C.r_dx10Texture("s_env", oT2_Name); diff --git a/src/Layers/xrRender/Blender_Recorder_StandartBinding.cpp b/src/Layers/xrRender/Blender_Recorder_StandartBinding.cpp index 63883a24c97..f8926de0aef 100644 --- a/src/Layers/xrRender/Blender_Recorder_StandartBinding.cpp +++ b/src/Layers/xrRender/Blender_Recorder_StandartBinding.cpp @@ -385,6 +385,6 @@ void CBlender_Compile::SetMapping() for (u32 it = 0; it < RImplementation.Resources->v_constant_setup.size(); it++) { std::pair cs = RImplementation.Resources->v_constant_setup[it]; - r_Constant(cs.first.c_str(), cs.second); + r_Constant(*cs.first, cs.second); } } diff --git a/src/Layers/xrRender/ModelPool.cpp b/src/Layers/xrRender/ModelPool.cpp index 49963c05615..05a44f4bd37 100644 --- a/src/Layers/xrRender/ModelPool.cpp +++ b/src/Layers/xrRender/ModelPool.cpp @@ -202,7 +202,7 @@ dxRender_Visual* CModelPool::Instance_Find(LPCSTR N) xr_vector::iterator I; for (I = Models.begin(); I != Models.end(); I++) { - if (I->name[0] && (0 == xr_strcmp(I->name.c_str(), N))) + if (I->name[0] && (0 == xr_strcmp(*I->name, N))) { Model = I->model; break; @@ -354,7 +354,7 @@ void CModelPool::Discard(dxRender_Visual*& V, BOOL b_complete) { if (I->name == name) { - if (b_complete || strchr(name.c_str(), '#')) + if (b_complete || strchr(*name, '#')) { VERIFY(I->refs > 0); I->refs--; diff --git a/src/Layers/xrRender/ParticleEffectDef.cpp b/src/Layers/xrRender/ParticleEffectDef.cpp index 7392101f371..c60d9f6ee02 100644 --- a/src/Layers/xrRender/ParticleEffectDef.cpp +++ b/src/Layers/xrRender/ParticleEffectDef.cpp @@ -44,8 +44,8 @@ CPEDef::~CPEDef() } void CPEDef::CreateShader() { - if (m_ShaderName.c_str() && m_TextureName.c_str()) - m_CachedShader.create(m_ShaderName.c_str(), m_TextureName.c_str()); + if (*m_ShaderName && *m_TextureName) + m_CachedShader.create(*m_ShaderName, *m_TextureName); } void CPEDef::DestroyShader() { m_CachedShader.destroy(); } void CPEDef::SetName(LPCSTR name) { m_Name = name; } diff --git a/src/Layers/xrRender/ParticleEffectDef.h b/src/Layers/xrRender/ParticleEffectDef.h index 3ecda023883..1b60da3cd20 100644 --- a/src/Layers/xrRender/ParticleEffectDef.h +++ b/src/Layers/xrRender/ParticleEffectDef.h @@ -99,7 +99,7 @@ class ECORE_API CPEDef ~CPEDef(); void SetName(LPCSTR name); - LPCSTR Name() const { return m_Name.c_str(); } + LPCSTR Name() const { return *m_Name; } void CreateShader(); void DestroyShader(); diff --git a/src/Layers/xrRender/ParticleGroup.cpp b/src/Layers/xrRender/ParticleGroup.cpp index ad36319d584..19ff8fd8708 100644 --- a/src/Layers/xrRender/ParticleGroup.cpp +++ b/src/Layers/xrRender/ParticleGroup.cpp @@ -326,9 +326,9 @@ void OnGroupParticleBirth(void* owner, u32 param, PAPI::Particle& m, u32 idx) VERIFY(PGD); const CPGDef::SEffect* eff = PGD->m_Effects[param]; if (eff->m_Flags.is(CPGDef::SEffect::flOnBirthChild)) - PG->items[param].StartFreeChild(PE, eff->m_OnBirthChildName.c_str(), m); + PG->items[param].StartFreeChild(PE, *eff->m_OnBirthChildName, m); if (eff->m_Flags.is(CPGDef::SEffect::flOnPlayChild)) - PG->items[param].StartRelatedChild(PE, eff->m_OnPlayChildName.c_str(), m); + PG->items[param].StartRelatedChild(PE, *eff->m_OnPlayChildName, m); } void OnGroupParticleDead(void* owner, u32 param, PAPI::Particle& m, u32 idx) { @@ -343,7 +343,7 @@ void OnGroupParticleDead(void* owner, u32 param, PAPI::Particle& m, u32 idx) if (eff->m_Flags.is(CPGDef::SEffect::flOnPlayChild)) PG->items[param].StopRelatedChild(idx); if (eff->m_Flags.is(CPGDef::SEffect::flOnDeadChild)) - PG->items[param].StartFreeChild(PE, eff->m_OnDeadChildName.c_str(), m); + PG->items[param].StartFreeChild(PE, *eff->m_OnDeadChildName, m); } //------------------------------------------------------------------------------ struct zero_vis_pred : public std::unary_function @@ -558,7 +558,7 @@ BOOL CParticleGroup::Compile(CPGDef* def) items.resize(m_Def->m_Effects.size()); for (CPGDef::EffectVec::const_iterator e_it = m_Def->m_Effects.begin(); e_it != m_Def->m_Effects.end(); e_it++) { - CParticleEffect* eff = (CParticleEffect*)RImplementation.model_CreatePE((*e_it)->m_EffectName.c_str()); + CParticleEffect* eff = (CParticleEffect*)RImplementation.model_CreatePE(*(*e_it)->m_EffectName); eff->SetBirthDeadCB(OnGroupParticleBirth, OnGroupParticleDead, this, u32(e_it - m_Def->m_Effects.begin())); items[e_it - def->m_Effects.begin()].Set(eff); } diff --git a/src/Layers/xrRender/ResourceManager_Resources.cpp b/src/Layers/xrRender/ResourceManager_Resources.cpp index caef1aef552..32d5af0e14b 100644 --- a/src/Layers/xrRender/ResourceManager_Resources.cpp +++ b/src/Layers/xrRender/ResourceManager_Resources.cpp @@ -243,14 +243,14 @@ void CResourceManager::_DeleteVS(const SVS* vs) { if (0 == (vs->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(vs->cName.c_str()); + LPSTR N = LPSTR(*vs->cName); map_VS::iterator I = m_vs.find(N); if (I != m_vs.end()) { m_vs.erase(I); return; } - Msg("! ERROR: Failed to find compiled vertex-shader '%s'", vs->cName.c_str()); + Msg("! ERROR: Failed to find compiled vertex-shader '%s'", *vs->cName); } #ifndef _EDITOR @@ -337,14 +337,14 @@ void CResourceManager::_DeletePS(const SPS* ps) { if (0 == (ps->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(ps->cName.c_str()); + LPSTR N = LPSTR(*ps->cName); map_PS::iterator I = m_ps.find(N); if (I != m_ps.end()) { m_ps.erase(I); return; } - Msg("! ERROR: Failed to find compiled pixel-shader '%s'", ps->cName.c_str()); + Msg("! ERROR: Failed to find compiled pixel-shader '%s'", *ps->cName); } R_constant_table* CResourceManager::_CreateConstantTable(R_constant_table& C) @@ -391,14 +391,14 @@ void CResourceManager::_DeleteRT(const CRT* RT) { if (0 == (RT->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(RT->cName.c_str()); + LPSTR N = LPSTR(*RT->cName); map_RT::iterator I = m_rtargets.find(N); if (I != m_rtargets.end()) { m_rtargets.erase(I); return; } - Msg("! ERROR: Failed to find render-target '%s'", RT->cName.c_str()); + Msg("! ERROR: Failed to find render-target '%s'", *RT->cName); } // DX10 cut @@ -529,14 +529,14 @@ void CResourceManager::_DeleteTexture(const CTexture* T) if (0 == (T->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(T->cName.c_str()); + LPSTR N = LPSTR(*T->cName); map_Texture::iterator I = m_textures.find(N); if (I != m_textures.end()) { m_textures.erase(I); return; } - Msg("! ERROR: Failed to find texture surface '%s'", T->cName.c_str()); + Msg("! ERROR: Failed to find texture surface '%s'", *T->cName); } #ifdef DEBUG @@ -549,7 +549,7 @@ void CResourceManager::DBG_VerifyTextures() R_ASSERT(I->first); R_ASSERT(I->second); R_ASSERT(I->second->cName); - R_ASSERT(0 == xr_strcmp(I->first, I->second->cName.c_str())); + R_ASSERT(0 == xr_strcmp(I->first, *I->second->cName)); } } #endif @@ -578,14 +578,14 @@ void CResourceManager::_DeleteMatrix(const CMatrix* M) { if (0 == (M->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(M->cName.c_str()); + LPSTR N = LPSTR(*M->cName); map_Matrix::iterator I = m_matrices.find(N); if (I != m_matrices.end()) { m_matrices.erase(I); return; } - Msg("! ERROR: Failed to find xform-def '%s'", M->cName.c_str()); + Msg("! ERROR: Failed to find xform-def '%s'", *M->cName); } void CResourceManager::ED_UpdateMatrix(LPCSTR Name, CMatrix* data) { @@ -616,14 +616,14 @@ void CResourceManager::_DeleteConstant(const CConstant* C) { if (0 == (C->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(C->cName.c_str()); + LPSTR N = LPSTR(*C->cName); map_Constant::iterator I = m_constants.find(N); if (I != m_constants.end()) { m_constants.erase(I); return; } - Msg("! ERROR: Failed to find R1-constant-def '%s'", C->cName.c_str()); + Msg("! ERROR: Failed to find R1-constant-def '%s'", *C->cName); } void CResourceManager::ED_UpdateConstant(LPCSTR Name, CConstant* data) diff --git a/src/Layers/xrRender/ResourceManager_Scripting.cpp b/src/Layers/xrRender/ResourceManager_Scripting.cpp index 56c6a15d6c9..b4ab6fa9778 100644 --- a/src/Layers/xrRender/ResourceManager_Scripting.cpp +++ b/src/Layers/xrRender/ResourceManager_Scripting.cpp @@ -413,8 +413,8 @@ ShaderElement* CBlender_Compile::_lua_Compile(LPCSTR namesp, LPCSTR name) RS.Invalidate(); // Compile - LPCSTR t_0 = L_textures[0].c_str() ? L_textures[0].c_str() : "null"; - LPCSTR t_1 = (L_textures.size() > 1) ? L_textures[1].c_str() : "null"; + LPCSTR t_0 = *L_textures[0] ? *L_textures[0] : "null"; + LPCSTR t_1 = (L_textures.size() > 1) ? *L_textures[1] : "null"; LPCSTR t_d = detail_texture ? detail_texture : "null"; object shader = RImplementation.Resources->ScriptEngine.name_space(namesp); functor element = shader[name]; diff --git a/src/Layers/xrRender/SH_RT.cpp b/src/Layers/xrRender/SH_RT.cpp index c891ce913eb..08698950189 100644 --- a/src/Layers/xrRender/SH_RT.cpp +++ b/src/Layers/xrRender/SH_RT.cpp @@ -103,7 +103,7 @@ void CRT::destroy() _RELEASE(pSurface); } void CRT::reset_begin() { destroy(); } -void CRT::reset_end() { create(cName.c_str(), dwWidth, dwHeight, fmt); } +void CRT::reset_end() { create(*cName, dwWidth, dwHeight, fmt); } void resptrcode_crt::create(LPCSTR Name, u32 w, u32 h, D3DFORMAT f, u32 SampleCount) { _set(RImplementation.Resources->_CreateRT(Name, w, h, f)); diff --git a/src/Layers/xrRender/SH_Texture.cpp b/src/Layers/xrRender/SH_Texture.cpp index 065002a17b7..de2ffae843f 100644 --- a/src/Layers/xrRender/SH_Texture.cpp +++ b/src/Layers/xrRender/SH_Texture.cpp @@ -158,9 +158,9 @@ void CTexture::Load() flags.bUser = false; flags.MemoryUsage = 0; - if (0 == _stricmp(cName.c_str(), "$null")) + if (0 == _stricmp(*cName, "$null")) return; - if (nullptr != strstr(cName.c_str(), "$user$")) + if (nullptr != strstr(*cName, "$user$")) { flags.bUser = true; return; @@ -174,7 +174,7 @@ void CTexture::Load() { // Check for OGM string_path fn; - if (FS.exist(fn, "$game_textures$", cName.c_str(), ".ogm")) + if (FS.exist(fn, "$game_textures$", *cName, ".ogm")) { // AVI pTheora = new CTheoraSurface(); @@ -209,7 +209,7 @@ void CTexture::Load() } } } - else if (FS.exist(fn, "$game_textures$", cName.c_str(), ".avi")) + else if (FS.exist(fn, "$game_textures$", *cName, ".avi")) { // AVI pAVI = new CAviPlayerCustom(); @@ -237,7 +237,7 @@ void CTexture::Load() } } } - else if (FS.exist(fn, "$game_textures$", cName.c_str(), ".seq")) + else if (FS.exist(fn, "$game_textures$", *cName, ".seq")) { // Sequence string256 buffer; @@ -277,7 +277,7 @@ void CTexture::Load() { // Normal texture u32 mem = 0; - pSurface = ::RImplementation.texture_load(cName.c_str(), mem); + pSurface = ::RImplementation.texture_load(*cName, mem); // Calc memory usage and preload into vid-mem if (pSurface) diff --git a/src/Layers/xrRender/ShaderResourceTraits.h b/src/Layers/xrRender/ShaderResourceTraits.h index 30ee4f11fe9..c2940022652 100644 --- a/src/Layers/xrRender/ShaderResourceTraits.h +++ b/src/Layers/xrRender/ShaderResourceTraits.h @@ -143,7 +143,7 @@ inline void CResourceManager::DestroyShader(const T* sh) if (0 == (sh->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(sh->cName.c_str()); + LPSTR N = LPSTR(*sh->cName); typename ShaderTypeTraits::MapType::iterator I = sh_map.find(N); if (I != sh_map.end()) @@ -151,7 +151,7 @@ inline void CResourceManager::DestroyShader(const T* sh) sh_map.erase(I); return; } - Msg("! ERROR: Failed to find compiled geometry shader '%s'", sh->cName.c_str()); + Msg("! ERROR: Failed to find compiled geometry shader '%s'", *sh->cName); } #endif diff --git a/src/Layers/xrRender/SkeletonAnimated.cpp b/src/Layers/xrRender/SkeletonAnimated.cpp index c5befed78d9..220cbaea188 100644 --- a/src/Layers/xrRender/SkeletonAnimated.cpp +++ b/src/Layers/xrRender/SkeletonAnimated.cpp @@ -67,7 +67,7 @@ std::pair CKinematicsAnimated::LL_MotionDefName_dbg(MotionID ID) accel_map::iterator _I, _E = s_mots.motion_map()->end(); for (_I = s_mots.motion_map()->begin(); _I != _E; ++_I) if (_I->second == ID.idx) - return std::make_pair(_I->first.c_str(), s_mots.id().c_str()); + return std::make_pair(*_I->first, *s_mots.id()); return std::make_pair((LPCSTR)nullptr, (LPCSTR)nullptr); } @@ -175,7 +175,7 @@ u16 CKinematicsAnimated::LL_PartID(LPCSTR B) CPartDef& P = (*m_Partition)[id]; if (nullptr == P.Name) continue; - if (0 == _stricmp(B, P.Name.c_str())) + if (0 == _stricmp(B, *P.Name)) return id; } return BI_NONE; diff --git a/src/Layers/xrRender/SkeletonCustom.cpp b/src/Layers/xrRender/SkeletonCustom.cpp index 6628a628cde..c7721c68430 100644 --- a/src/Layers/xrRender/SkeletonCustom.cpp +++ b/src/Layers/xrRender/SkeletonCustom.cpp @@ -24,13 +24,13 @@ Lock UCalc_Mutex ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// -bool pred_N(const std::pair& N, LPCSTR B) { return xr_strcmp(N.first.c_str(), B) < 0; } +bool pred_N(const std::pair& N, LPCSTR B) { return xr_strcmp(*N.first, B) < 0; } u16 CKinematics::LL_BoneID(LPCSTR B) { accel::iterator I = std::lower_bound(bone_map_N->begin(), bone_map_N->end(), B, pred_N); if (I == bone_map_N->end()) return BI_NONE; - if (0 != xr_strcmp(I->first.c_str(), B)) + if (0 != xr_strcmp(*(I->first), B)) return BI_NONE; return u16(I->second); } @@ -51,7 +51,7 @@ LPCSTR CKinematics::LL_BoneName_dbg(u16 ID) CKinematics::accel::iterator _I, _E = bone_map_N->end(); for (_I = bone_map_N->begin(); _I != _E; ++_I) if (_I->second == ID) - return _I->first.c_str(); + return *_I->first; return nullptr; } @@ -395,7 +395,7 @@ void CKinematics::LL_Validate() BD.IK_data.ik_flags.set(SJointIKData::flBreakable, FALSE); } #ifdef DEBUG - Msg("! ERROR: Invalid breakable object: '%s'", dbg_name.c_str()); + Msg("! ERROR: Invalid breakable object: '%s'", *dbg_name); #endif } } diff --git a/src/Layers/xrRender/blenders/Blender_Recorder.cpp b/src/Layers/xrRender/blenders/Blender_Recorder.cpp index 42dc574c3b5..48c5e150a57 100644 --- a/src/Layers/xrRender/blenders/Blender_Recorder.cpp +++ b/src/Layers/xrRender/blenders/Blender_Recorder.cpp @@ -44,7 +44,7 @@ void CBlender_Compile::_cpp_Compile(ShaderElement* _SH) RS.Invalidate(); // TODO: Check if we need such wired system for - // base texture name detection. Perhaps it's done for + // base texture name detection. Perhapse it's done for // optimization? // Analyze possibility to detail this shader @@ -60,8 +60,8 @@ void CBlender_Compile::_cpp_Compile(ShaderElement* _SH) if (id >= 0) { if (id >= int(lst.size())) - xrDebug::Fatal(DEBUG_INFO, "Not enough textures for shader. Base texture: '%s'.", lst[0].c_str()); - base = lst[id].c_str(); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader. Base texture: '%s'.", *lst[0]); + base = *lst[id]; } if (!RImplementation.Resources->m_textures_description.GetDetailTexture(base, detail_texture, detail_scaler)) bDetail = false; @@ -79,8 +79,8 @@ void CBlender_Compile::_cpp_Compile(ShaderElement* _SH) if (id >= 0) { if (id >= int(lst.size())) - xrDebug::Fatal(DEBUG_INFO, "Not enough textures for shader. Base texture: '%s'.", lst[0].c_str()); - base = lst[id].c_str(); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader. Base texture: '%s'.", *lst[0]); + base = *lst[id]; } } // Igor @@ -316,8 +316,8 @@ void CBlender_Compile::Stage_Texture(LPCSTR name, u32, u32 fmin, u32 fmip, u32 f if (id >= 0) { if (id >= int(lst.size())) - xrDebug::Fatal(DEBUG_INFO, "Not enough textures for shader. Base texture: '%s'.", lst[0].c_str()); - N = lst[id].c_str(); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader. Base texture: '%s'.", *lst[0]); + N = *lst[id]; } passTextures.push_back(std::make_pair(Stage(), ref_texture(RImplementation.Resources->_CreateTexture(N)))); // i_Address (Stage(),address); @@ -328,7 +328,7 @@ void CBlender_Compile::Stage_Matrix(LPCSTR name, int iChannel) { sh_list& lst = L_matrices; int id = ParseName(name); - CMatrix* M = RImplementation.Resources->_CreateMatrix((id >= 0) ? lst[id].c_str() : name); + CMatrix* M = RImplementation.Resources->_CreateMatrix((id >= 0) ? *lst[id] : name); passMatrices.push_back(M); // Setup transform pipeline @@ -354,5 +354,5 @@ void CBlender_Compile::Stage_Constant(LPCSTR name) { sh_list& lst = L_constants; int id = ParseName(name); - passConstants.push_back(RImplementation.Resources->_CreateConstant((id >= 0) ? lst[id].c_str() : name)); + passConstants.push_back(RImplementation.Resources->_CreateConstant((id >= 0) ? *lst[id] : name)); } diff --git a/src/Layers/xrRender/r_constants.cpp b/src/Layers/xrRender/r_constants.cpp index fece37f50dc..38d2e0532da 100644 --- a/src/Layers/xrRender/r_constants.cpp +++ b/src/Layers/xrRender/r_constants.cpp @@ -19,13 +19,13 @@ R_constant_table::~R_constant_table() { RImplementation.Resources->_DeleteConstantTable(this); } void R_constant_table::fatal(LPCSTR S) { FATAL(S); } // predicates -IC bool p_search(ref_constant C, LPCSTR S) { return xr_strcmp(C->name.c_str(), S) < 0; } +IC bool p_search(ref_constant C, LPCSTR S) { return xr_strcmp(*C->name, S) < 0; } IC bool p_sort(ref_constant C1, ref_constant C2) { return xr_strcmp(C1->name, C2->name) < 0; } ref_constant R_constant_table::get(LPCSTR S) { // assumption - sorted by name c_table::iterator I = std::lower_bound(table.begin(), table.end(), S, p_search); - if (I == table.end() || (0 != xr_strcmp((*I)->name.c_str(), S))) + if (I == table.end() || (0 != xr_strcmp(*(*I)->name, S))) return nullptr; else return *I; @@ -185,7 +185,7 @@ void R_constant_table::merge(R_constant_table* T) for (u32 it = 0; it < T->table.size(); it++) { ref_constant src = T->table[it]; - ref_constant C = get(src->name.c_str()); + ref_constant C = get(*src->name); if (!C) { C = new R_constant(); //.g_constant_allocator.create(); diff --git a/src/Layers/xrRender/uber_deffer.cpp b/src/Layers/xrRender/uber_deffer.cpp index 72069ec27d7..99320d727f4 100644 --- a/src/Layers/xrRender/uber_deffer.cpp +++ b/src/Layers/xrRender/uber_deffer.cpp @@ -7,7 +7,7 @@ void uber_deffer(CBlender_Compile& C, bool hq, LPCSTR _vspec, LPCSTR _pspec, BOO { // Uber-parse string256 fname, fnameA, fnameB; - xr_strcpy(fname, C.L_textures[0].c_str()); //. andy if (strext(fname)) *strext(fname)=0; + xr_strcpy(fname, *C.L_textures[0]); //. andy if (strext(fname)) *strext(fname)=0; fix_texture_name(fname); ref_texture _t; _t.create(fname); @@ -238,7 +238,7 @@ void uber_shadow(CBlender_Compile& C, LPCSTR _vspec) { // Uber-parse string256 fname, fnameA, fnameB; - xr_strcpy(fname, C.L_textures[0].c_str()); //. andy if (strext(fname)) *strext(fname)=0; + xr_strcpy(fname, *C.L_textures[0]); //. andy if (strext(fname)) *strext(fname)=0; fix_texture_name(fname); ref_texture _t; _t.create(fname); diff --git a/src/Layers/xrRenderDX10/dx10ConstantBuffer_impl.h b/src/Layers/xrRenderDX10/dx10ConstantBuffer_impl.h index 549e98276ac..e84bb04904d 100644 --- a/src/Layers/xrRenderDX10/dx10ConstantBuffer_impl.h +++ b/src/Layers/xrRenderDX10/dx10ConstantBuffer_impl.h @@ -47,7 +47,7 @@ IC void dx10ConstantBuffer::set(R_constant* C, R_constant_load& L, const Fmatrix break; default: #ifdef DEBUG - xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", C->name.c_str()); + xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", *C->name); #else NODEFAULT; #endif @@ -147,7 +147,7 @@ IC void dx10ConstantBuffer::seta(R_constant* C, R_constant_load& L, u32 e, const break; default: #ifdef DEBUG - xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", C->name.c_str()); + xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", *C->name); #else NODEFAULT; #endif diff --git a/src/Layers/xrRenderDX10/dx10ResourceManager_Resources.cpp b/src/Layers/xrRenderDX10/dx10ResourceManager_Resources.cpp index c78d05c26ac..b22bd6d2233 100644 --- a/src/Layers/xrRenderDX10/dx10ResourceManager_Resources.cpp +++ b/src/Layers/xrRenderDX10/dx10ResourceManager_Resources.cpp @@ -213,7 +213,7 @@ void CResourceManager::_DeleteVS(const SVS* vs) { if (0 == (vs->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(vs->cName.c_str()); + LPSTR N = LPSTR(*vs->cName); map_VS::iterator I = m_vs.find(N); if (I != m_vs.end()) { @@ -232,7 +232,7 @@ void CResourceManager::_DeleteVS(const SVS* vs) } return; } - Msg("! ERROR: Failed to find compiled vertex-shader '%s'", vs->cName.c_str()); + Msg("! ERROR: Failed to find compiled vertex-shader '%s'", *vs->cName); } //-------------------------------------------------------------------------------------------------------------- @@ -348,14 +348,14 @@ void CResourceManager::_DeletePS(const SPS* ps) { if (0 == (ps->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(ps->cName.c_str()); + LPSTR N = LPSTR(*ps->cName); map_PS::iterator I = m_ps.find(N); if (I != m_ps.end()) { m_ps.erase(I); return; } - Msg("! ERROR: Failed to find compiled pixel-shader '%s'", ps->cName.c_str()); + Msg("! ERROR: Failed to find compiled pixel-shader '%s'", *ps->cName); } //-------------------------------------------------------------------------------------------------------------- @@ -419,14 +419,14 @@ void CResourceManager::_DeleteGS(const SGS* gs) { if (0 == (gs->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(gs->cName.c_str()); + LPSTR N = LPSTR(*gs->cName); map_GS::iterator I = m_gs.find(N); if (I != m_gs.end()) { m_gs.erase(I); return; } - Msg("! ERROR: Failed to find compiled geometry shader '%s'", gs->cName.c_str()); + Msg("! ERROR: Failed to find compiled geometry shader '%s'", *gs->cName); } //-------------------------------------------------------------------------------------------------------------- @@ -527,14 +527,14 @@ void CResourceManager::_DeleteRT(const CRT* RT) { if (0 == (RT->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(RT->cName.c_str()); + LPSTR N = LPSTR(*RT->cName); map_RT::iterator I = m_rtargets.find(N); if (I != m_rtargets.end()) { m_rtargets.erase(I); return; } - Msg("! ERROR: Failed to find render-target '%s'", RT->cName.c_str()); + Msg("! ERROR: Failed to find render-target '%s'", *RT->cName); } /* // DX10 cut //-------------------------------------------------------------------------------------------------------------- @@ -656,14 +656,14 @@ void CResourceManager::_DeleteTexture(const CTexture* T) if (0 == (T->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(T->cName.c_str()); + LPSTR N = LPSTR(*T->cName); map_Texture::iterator I = m_textures.find(N); if (I != m_textures.end()) { m_textures.erase(I); return; } - Msg("! ERROR: Failed to find texture surface '%s'", T->cName.c_str()); + Msg("! ERROR: Failed to find texture surface '%s'", *T->cName); } #ifdef DEBUG @@ -676,7 +676,7 @@ void CResourceManager::DBG_VerifyTextures() R_ASSERT(I->first); R_ASSERT(I->second); R_ASSERT(I->second->cName); - R_ASSERT(0 == xr_strcmp(I->first, I->second->cName.c_str())); + R_ASSERT(0 == xr_strcmp(I->first, *I->second->cName)); } } #endif @@ -705,14 +705,14 @@ void CResourceManager::_DeleteMatrix(const CMatrix* M) { if (0 == (M->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(M->cName.c_str()); + LPSTR N = LPSTR(*M->cName); map_Matrix::iterator I = m_matrices.find(N); if (I != m_matrices.end()) { m_matrices.erase(I); return; } - Msg("! ERROR: Failed to find xform-def '%s'", M->cName.c_str()); + Msg("! ERROR: Failed to find xform-def '%s'", *M->cName); } void CResourceManager::ED_UpdateMatrix(LPCSTR Name, CMatrix* data) { @@ -743,14 +743,14 @@ void CResourceManager::_DeleteConstant(const CConstant* C) { if (0 == (C->dwFlags & xr_resource_flagged::RF_REGISTERED)) return; - LPSTR N = LPSTR(C->cName.c_str()); + LPSTR N = LPSTR(*C->cName); map_Constant::iterator I = m_constants.find(N); if (I != m_constants.end()) { m_constants.erase(I); return; } - Msg("! ERROR: Failed to find R1-constant-def '%s'", C->cName.c_str()); + Msg("! ERROR: Failed to find R1-constant-def '%s'", *C->cName); } void CResourceManager::ED_UpdateConstant(LPCSTR Name, CConstant* data) diff --git a/src/Layers/xrRenderDX10/dx10ResourceManager_Scripting.cpp b/src/Layers/xrRenderDX10/dx10ResourceManager_Scripting.cpp index dc65c2f6923..4f24a5af772 100644 --- a/src/Layers/xrRenderDX10/dx10ResourceManager_Scripting.cpp +++ b/src/Layers/xrRenderDX10/dx10ResourceManager_Scripting.cpp @@ -445,8 +445,8 @@ ShaderElement* CBlender_Compile::_lua_Compile(LPCSTR namesp, LPCSTR name) RS.Invalidate(); // Compile - LPCSTR t_0 = L_textures[0].c_str() ? L_textures[0].c_str() : "null"; - LPCSTR t_1 = (L_textures.size() > 1) ? L_textures[1].c_str() : "null"; + LPCSTR t_0 = *L_textures[0] ? *L_textures[0] : "null"; + LPCSTR t_1 = (L_textures.size() > 1) ? *L_textures[1] : "null"; LPCSTR t_d = detail_texture ? detail_texture : "null"; object shader = RImplementation.Resources->ScriptEngine.name_space(namesp); functor element = shader[name]; diff --git a/src/Layers/xrRenderDX10/dx10SH_RT.cpp b/src/Layers/xrRenderDX10/dx10SH_RT.cpp index 770f4ec9aa5..978e1c074e6 100644 --- a/src/Layers/xrRenderDX10/dx10SH_RT.cpp +++ b/src/Layers/xrRenderDX10/dx10SH_RT.cpp @@ -208,7 +208,7 @@ void CRT::destroy() #endif } void CRT::reset_begin() { destroy(); } -void CRT::reset_end() { create(cName.c_str(), dwWidth, dwHeight, fmt); } +void CRT::reset_end() { create(*cName, dwWidth, dwHeight, fmt); } #ifdef USE_DX11 void resptrcode_crt::create(LPCSTR Name, u32 w, u32 h, D3DFORMAT f, u32 SampleCount, bool useUAV) { diff --git a/src/Layers/xrRenderDX10/dx10SH_Texture.cpp b/src/Layers/xrRenderDX10/dx10SH_Texture.cpp index 4b977f9f098..32ec768cdf5 100644 --- a/src/Layers/xrRenderDX10/dx10SH_Texture.cpp +++ b/src/Layers/xrRenderDX10/dx10SH_Texture.cpp @@ -375,9 +375,9 @@ void CTexture::Load() flags.bUser = false; flags.MemoryUsage = 0; - if (0 == _stricmp(cName.c_str(), "$null")) + if (0 == _stricmp(*cName, "$null")) return; - if (0 != strstr(cName.c_str(), "$user$")) + if (0 != strstr(*cName, "$user$")) { flags.bUser = true; return; @@ -389,7 +389,7 @@ void CTexture::Load() // Check for OGM string_path fn; - if (FS.exist(fn, "$game_textures$", cName.c_str(), ".ogm")) + if (FS.exist(fn, "$game_textures$", *cName, ".ogm")) { // AVI pTheora = new CTheoraSurface(); @@ -441,7 +441,7 @@ void CTexture::Load() } } } - else if (FS.exist(fn, "$game_textures$", cName.c_str(), ".avi")) + else if (FS.exist(fn, "$game_textures$", *cName, ".avi")) { // AVI pAVI = new CAviPlayerCustom(); @@ -490,7 +490,7 @@ void CTexture::Load() } } } - else if (FS.exist(fn, "$game_textures$", cName.c_str(), ".seq")) + else if (FS.exist(fn, "$game_textures$", *cName, ".seq")) { // Sequence string256 buffer; @@ -532,8 +532,8 @@ void CTexture::Load() { // Normal texture u32 mem = 0; - // pSurface = ::RImplementation.texture_load (cName.c_str(),mem); - pSurface = ::RImplementation.texture_load(cName.c_str(), mem, true); + // pSurface = ::RImplementation.texture_load (*cName,mem); + pSurface = ::RImplementation.texture_load(*cName, mem, true); if (GetUsage() == D3D_USAGE_STAGING) { diff --git a/src/Layers/xrRenderDX9/dx9r_constants_cache.h b/src/Layers/xrRenderDX9/dx9r_constants_cache.h index 8b59c74d6d6..0724ce1f3e5 100644 --- a/src/Layers/xrRenderDX9/dx9r_constants_cache.h +++ b/src/Layers/xrRenderDX9/dx9r_constants_cache.h @@ -69,7 +69,7 @@ class R_constant_array break; default: #ifdef DEBUG - xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", C->name.c_str()); + xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", *C->name); #else NODEFAULT; #endif @@ -117,7 +117,7 @@ class R_constant_array break; default: #ifdef DEBUG - xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", C->name.c_str()); + xrDebug::Fatal(DEBUG_INFO, "Invalid constant run-time-type for '%s'", *C->name); #else NODEFAULT; #endif diff --git a/src/Layers/xrRenderPC_R1/BlenderDefault.cpp b/src/Layers/xrRenderPC_R1/BlenderDefault.cpp index e4a9713424e..8f2e0e38fc6 100644 --- a/src/Layers/xrRenderPC_R1/BlenderDefault.cpp +++ b/src/Layers/xrRenderPC_R1/BlenderDefault.cpp @@ -69,7 +69,7 @@ void CBlender_default::Compile(CBlender_Compile& C) else { if (C.L_textures.size() < 3) - xrDebug::Fatal(DEBUG_INFO, "Not enough textures for shader, base tex: %s", C.L_textures[0].c_str()); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader, base tex: %s", *C.L_textures[0]); switch (C.iElement) { case SE_R1_NORMAL_HQ: @@ -80,7 +80,7 @@ void CBlender_default::Compile(CBlender_Compile& C) C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); C.r_Sampler("s_detail", C.detail_texture); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); } else @@ -88,7 +88,7 @@ void CBlender_default::Compile(CBlender_Compile& C) C.r_Pass("lmap", "lmap", TRUE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); } break; @@ -96,7 +96,7 @@ void CBlender_default::Compile(CBlender_Compile& C) C.r_Pass("lmap", "lmap", TRUE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); break; case SE_R1_LPOINT: @@ -118,7 +118,7 @@ void CBlender_default::Compile(CBlender_Compile& C) C.r_Pass("lmap_l", "lmap_l", FALSE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); break; } diff --git a/src/Layers/xrRenderPC_R1/Blender_default_aref.cpp b/src/Layers/xrRenderPC_R1/Blender_default_aref.cpp index 40f8e7adeaf..ddd5a584059 100644 --- a/src/Layers/xrRenderPC_R1/Blender_default_aref.cpp +++ b/src/Layers/xrRenderPC_R1/Blender_default_aref.cpp @@ -74,7 +74,7 @@ void CBlender_default_aref::Compile(CBlender_Compile& C) else { if (C.L_textures.size() < 2) - xrDebug::Fatal(DEBUG_INFO, "Not enough textures for shader, base tex: %s", C.L_textures[0].c_str()); + xrDebug::Fatal(DEBUG_INFO, "Not enought textures for shader, base tex: %s", *C.L_textures[0]); switch (C.iElement) { case SE_R1_NORMAL_HQ: @@ -90,7 +90,7 @@ void CBlender_default_aref::Compile(CBlender_Compile& C) C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); C.r_Sampler("s_detail", C.detail_texture); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); } break; @@ -104,7 +104,7 @@ void CBlender_default_aref::Compile(CBlender_Compile& C) C.r_Pass(sname, sname, TRUE, TRUE, TRUE, TRUE, D3DBLEND_ONE, D3DBLEND_ZERO, TRUE, oAREF.value); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); } break; @@ -135,7 +135,7 @@ void CBlender_default_aref::Compile(CBlender_Compile& C) C.r_Pass("lmap_l", "lmap_l", FALSE); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_End(); break; } diff --git a/src/Layers/xrRenderPC_R1/LightProjector.cpp b/src/Layers/xrRenderPC_R1/LightProjector.cpp index 73699363f48..1e8b0c67a32 100644 --- a/src/Layers/xrRenderPC_R1/LightProjector.cpp +++ b/src/Layers/xrRenderPC_R1/LightProjector.cpp @@ -243,7 +243,7 @@ void CLightProjector::calculate() if ((v.x * v.x + v.y * v.y + v.z * v.z) <= flt_zero) { IGameObject* OO = dynamic_cast(R.O); - Msg("Object[%s] Visual[%s] has invalid position. ", OO->cName().c_str(), OO->cNameVisual().c_str()); + Msg("Object[%s] Visual[%s] has invalid position. ", *OO->cName(), *OO->cNameVisual()); Fvector cc; OO->Center(cc); Log("center=", cc); diff --git a/src/Layers/xrRenderPC_R2/blender_deffer_aref.cpp b/src/Layers/xrRenderPC_R2/blender_deffer_aref.cpp index e164d46bb0e..0db8116e8b1 100644 --- a/src/Layers/xrRenderPC_R2/blender_deffer_aref.cpp +++ b/src/Layers/xrRenderPC_R2/blender_deffer_aref.cpp @@ -48,7 +48,7 @@ void CBlender_deffer_aref::Compile(CBlender_Compile& C) oAREF.value); C.r_Sampler("s_base", C.L_textures[0]); C.r_Sampler("s_lmap", C.L_textures[1]); - C.r_Sampler_clf("s_hemi", C.L_textures[2].c_str()); + C.r_Sampler_clf("s_hemi", *C.L_textures[2]); C.r_Sampler("s_env", r2_T_envs0, false, D3DTADDRESS_CLAMP); C.r_End(); } diff --git a/src/Layers/xrRenderPC_R2/blender_light_point.cpp b/src/Layers/xrRenderPC_R2/blender_light_point.cpp index 1eb1d5bc2e6..a04cd955d2f 100644 --- a/src/Layers/xrRenderPC_R2/blender_light_point.cpp +++ b/src/Layers/xrRenderPC_R2/blender_light_point.cpp @@ -25,7 +25,7 @@ void CBlender_accum_point::Compile(CBlender_Compile& C) C.r_Sampler_rtf("s_position", r2_RT_P); C.r_Sampler_rtf("s_normal", r2_RT_N); C.r_Sampler_clw("s_material", r2_material); - C.r_Sampler_clf("s_lmap", C.L_textures[0].c_str()); + C.r_Sampler_clf("s_lmap", *C.L_textures[0]); C.r_Sampler_rtf("s_accumulator", r2_RT_accum); C.r_End(); break; diff --git a/src/Layers/xrRenderPC_R3/blender_deffer_aref.cpp b/src/Layers/xrRenderPC_R3/blender_deffer_aref.cpp index e8ac47246c5..982927adfa2 100644 --- a/src/Layers/xrRenderPC_R3/blender_deffer_aref.cpp +++ b/src/Layers/xrRenderPC_R3/blender_deffer_aref.cpp @@ -53,7 +53,7 @@ void CBlender_deffer_aref::Compile(CBlender_Compile& C) C.r_dx10Texture("s_base", C.L_textures[0]); C.r_dx10Texture("s_lmap", C.L_textures[1]); - C.r_dx10Texture("s_hemi", C.L_textures[2].c_str()); + C.r_dx10Texture("s_hemi", *C.L_textures[2]); C.r_dx10Texture("s_env", r2_T_envs0); C.r_dx10Sampler("smp_base"); diff --git a/src/Layers/xrRenderPC_R4/blender_deffer_aref.cpp b/src/Layers/xrRenderPC_R4/blender_deffer_aref.cpp index e8ac47246c5..982927adfa2 100644 --- a/src/Layers/xrRenderPC_R4/blender_deffer_aref.cpp +++ b/src/Layers/xrRenderPC_R4/blender_deffer_aref.cpp @@ -53,7 +53,7 @@ void CBlender_deffer_aref::Compile(CBlender_Compile& C) C.r_dx10Texture("s_base", C.L_textures[0]); C.r_dx10Texture("s_lmap", C.L_textures[1]); - C.r_dx10Texture("s_hemi", C.L_textures[2].c_str()); + C.r_dx10Texture("s_hemi", *C.L_textures[2]); C.r_dx10Texture("s_env", r2_T_envs0); C.r_dx10Sampler("smp_base");