Lines Matching defs:pShader
1577 static void shader_chache_put(PVBOXEXT_HASHCACHE pCache, IWineD3DBaseShaderImpl *pShader);
2357 IWineD3DBaseShaderImpl *pShader = (IWineD3DBaseShaderImpl *)pvKey;
2358 if (pShader->baseShader.u32CacheDataInited)
2359 return pShader->baseShader.u32Hash;
2361 u32Hash = pShader->baseShader.functionLength;
2362 function = pShader->baseShader.function;
2363 for (i = 0; i < pShader->baseShader.functionLength / 4; ++i)
2368 for (i = 0; i < pShader->baseShader.functionLength % 4; ++i)
2373 pShader->baseShader.u32Hash = u32Hash;
2374 pShader->baseShader.u32CacheDataInited = TRUE;
2375 return pShader->baseShader.u32Hash;
2404 IWineD3DBaseShaderImpl *pShader = VBOX_SHADER_FROM_CACHE_ENTRY(pEntry);
2405 shader_cleanup((IWineD3DBaseShader *)pShader);
2406 if (pShader->baseShader.parent)
2407 pShader->baseShader.parent_ops->wined3d_object_destroyed(pShader->baseShader.parent);
2408 HeapFree(GetProcessHeap(), 0, pShader);
2421 static void shader_chache_put(PVBOXEXT_HASHCACHE pCache, IWineD3DBaseShaderImpl *pShader)
2423 if (pShader->baseShader.parent)
2425 pShader->baseShader.parent_ops->wined3d_object_destroyed(pShader->baseShader.parent);
2426 pShader->baseShader.parent = NULL;
2429 VBoxExtCachePut(pCache, pShader, &pShader->baseShader.CacheEntry);
2432 static IWineD3DBaseShaderImpl* shader_chache_get(PVBOXEXT_HASHCACHE pCache, IWineD3DBaseShaderImpl *pShader)
2434 PVBOXEXT_HASHCACHE_ENTRY pEntry = VBoxExtCacheGet(pCache, pShader);
2438 return pShader;
2441 shader_reinit(&pCachedShader->baseShader, (IWineD3DDeviceImpl *)pShader->baseShader.device,
2442 pShader->baseShader.parent, pShader->baseShader.parent_ops);
2443 pShader->baseShader.parent = NULL;
2445 shader_cleanup((IWineD3DBaseShader *)pShader);
2446 HeapFree(GetProcessHeap(), 0, pShader);