/* static */ TemporaryRef<DeprecatedTextureHost> DeprecatedTextureHost::CreateDeprecatedTextureHost(SurfaceDescriptorType aDescriptorType, uint32_t aDeprecatedTextureHostFlags, uint32_t aTextureFlags) { switch (Compositor::GetBackend()) { case LAYERS_OPENGL: return CreateDeprecatedTextureHostOGL(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); #ifdef XP_WIN case LAYERS_D3D9: return CreateDeprecatedTextureHostD3D9(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); case LAYERS_D3D11: return CreateDeprecatedTextureHostD3D11(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); #endif case LAYERS_BASIC: return CreateBasicDeprecatedTextureHost(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); default: MOZ_CRASH("Couldn't create texture host"); } }
/* static */ TemporaryRef<DeprecatedTextureHost> DeprecatedTextureHost::CreateDeprecatedTextureHost(SurfaceDescriptorType aDescriptorType, uint32_t aDeprecatedTextureHostFlags, uint32_t aTextureFlags, CompositableHost* aCompositableHost) { switch (Compositor::GetBackend()) { case LAYERS_OPENGL: { RefPtr<DeprecatedTextureHost> result; result = CreateDeprecatedTextureHostOGL(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); if (aCompositableHost) { result->SetCompositableBackendSpecificData(aCompositableHost->GetCompositableBackendSpecificData()); } return result; } #ifdef XP_WIN case LAYERS_D3D9: return CreateDeprecatedTextureHostD3D9(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); case LAYERS_D3D11: return CreateDeprecatedTextureHostD3D11(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); #endif case LAYERS_BASIC: return CreateBasicDeprecatedTextureHost(aDescriptorType, aDeprecatedTextureHostFlags, aTextureFlags); default: MOZ_CRASH("Couldn't create texture host"); } }