void CFb2EpubConverterPaths::ReadTargets(LPTSTR strINILocation) { ReleaseTargets(); WCHAR temp[PATH_SIZE+1]; ::ZeroMemory(temp,sizeof(WCHAR)*PATH_SIZE); UINT count = ::GetPrivateProfileInt(TARGETS_SECTION,L"TargetsCount",0,strINILocation); if ( count <= 0 ) { return; } target* pTempTargets = new target[count]; ::ZeroMemory(pTempTargets,count*sizeof(target)); WCHAR section[1024]; for (UINT i=1; i <= count; i ++ ) { ::ZeroMemory(section,sizeof(WCHAR)*1024); wsprintf(section,L"Target%d",i); ::ZeroMemory(temp,sizeof(WCHAR)*PATH_SIZE); target tempTarget; bool bAdd = (::GetPrivateProfileInt(section,L"ShowInShell",1,strINILocation) == 1); if ( bAdd ) { DWORD dwRes = ::GetPrivateProfileString(section,L"TargetPath",NULL,temp,1024,strINILocation); if (dwRes != 0) { tempTarget.path = _wcsdup(temp); ::ZeroMemory(temp,sizeof(WCHAR)*PATH_SIZE); DWORD dwRes = ::GetPrivateProfileString(section,L"TargetName",NULL,temp,1024,strINILocation); if (dwRes == 0) { tempTarget.name = L""; } else { tempTarget.name = _wcsdup(temp); } pTempTargets[m_uiTargetsCount++] = tempTarget; } } } if ( m_uiTargetsCount > 0 ) // if at least one target detected { m_pTargetsArray = new target[m_uiTargetsCount]; for(UINT32 i=0; i < m_uiTargetsCount; i++ ) { m_pTargetsArray[i] = pTempTargets[i]; } } ::ZeroMemory(pTempTargets,count*sizeof(target)); delete []pTempTargets; }
void EldritchTargetManager::CreateTargets( const uint DisplayWidth, const uint DisplayHeight ) { ReleaseTargets(); m_OriginalRenderTarget = m_Renderer->GetDefaultRenderTarget(); m_PrimaryRenderTarget = m_Renderer->CreateRenderTarget( SRenderTargetParams( DisplayWidth, DisplayHeight, ERTF_A16B16G16R16F, ERTF_UseDefault ) ); // HACK: Grabbing mirror UI screen to get desired RT dimensions. UIScreenEldMirror* const pMirrorScreen = EldritchGame::GetMirrorScreen(); const uint MirrorRTWidth = pMirrorScreen->GetMirrorRTWidth(); const uint MirrorRTHeight = pMirrorScreen->GetMirrorRTHeight(); m_MirrorRenderTarget = m_Renderer->CreateRenderTarget( SRenderTargetParams( MirrorRTWidth, MirrorRTHeight, ERTF_A16B16G16R16F, ERTF_UseDefault ) ); STATICHASH( EldMinimap ); STATICHASH( MinimapRTWidth ); STATICHASH( MinimapRTHeight ); const uint MinimapRTWidth = ConfigManager::GetInt( sMinimapRTWidth, 0, sEldMinimap ); const uint MinimapRTHeight = ConfigManager::GetInt( sMinimapRTHeight, 0, sEldMinimap ); m_MinimapRenderTarget = m_Renderer->CreateRenderTarget( SRenderTargetParams( MinimapRTWidth, MinimapRTHeight, ERTF_A16B16G16R16F, ERTF_UseDefault ) ); }
CFb2EpubConverterPaths::~CFb2EpubConverterPaths(void) { /* destructor code */ ReleaseTargets(); }
EldritchTargetManager::~EldritchTargetManager() { ReleaseTargets(); }