Lines Matching refs:provider

34  * Initialize provider type error value
44 if (pScrPriv->provider) { \
45 providers[count_providers] = pScrPriv->provider->id; \
76 if (pScrPriv->provider)
80 total_providers += pScrPriv->provider ? 1 : 0;
140 RRProviderPtr provider;
153 VERIFY_RR_PROVIDER(stuff->provider, provider, DixReadAccess);
155 pScreen = provider->pScreen;
163 .capabilities = provider->capabilities,
164 .nameLength = provider->nameLength,
172 if (provider->offload_sink)
174 if (provider->output_source &&
175 provider->output_source != provider->offload_sink)
213 if (provider->offload_sink) {
214 providers[i] = provider->offload_sink->id;
222 if (provider->output_source) {
223 providers[i] = provider->output_source->id;
234 providers[i] = pScrProvPriv->provider->id;
247 memcpy(name, provider->name, rep.nameLength);
271 * with the correct source provider.
301 * associated with the correct source provider.
322 RRProviderPtr provider, source_provider = NULL;
327 VERIFY_RR_PROVIDER(stuff->provider, provider, DixReadAccess);
329 if (!(provider->capabilities & RR_Capability_SinkOutput))
339 pScreen = provider->pScreen;
345 pScrPriv->rrProviderSetOutputSource(pScreen, provider, source_provider);
349 provider->changed = TRUE;
362 RRProviderPtr provider, sink_provider = NULL;
367 VERIFY_RR_PROVIDER(stuff->provider, provider, DixReadAccess);
368 if (!(provider->capabilities & RR_Capability_SourceOffload))
370 if (!provider->pScreen->isGPU)
378 pScreen = provider->pScreen;
381 pScrPriv->rrProviderSetOffloadSink(pScreen, provider, sink_provider);
383 provider->changed = TRUE;
395 RRProviderPtr provider;
400 provider = calloc(1, sizeof(RRProviderRec) + nameLength + 1);
401 if (!provider)
404 provider->id = FakeClientID(0);
405 provider->pScreen = pScreen;
406 provider->name = (char *) (provider + 1);
407 provider->nameLength = nameLength;
408 memcpy(provider->name, name, nameLength);
409 provider->name[nameLength] = '\0';
410 provider->changed = FALSE;
412 if (!AddResource (provider->id, RRProviderType, (void *) provider))
414 pScrPriv->provider = provider;
415 return provider;
419 * Destroy a provider at shutdown
422 RRProviderDestroy (RRProviderPtr provider)
424 RRFiniPrimeSyncProps(provider->pScreen);
425 FreeResource (provider->id, 0);
429 RRProviderSetCapabilities(RRProviderPtr provider, uint32_t capabilities)
431 provider->capabilities = capabilities;
437 RRProviderPtr provider = (RRProviderPtr)value;
438 ScreenPtr pScreen = provider->pScreen;
445 (*pScrPriv->rrProviderDestroy)(pScreen, provider);
446 pScrPriv->provider = NULL;
448 free(provider);
473 RRDeliverProviderEvent(ClientPtr client, WindowPtr pWin, RRProviderPtr provider)
484 .provider = provider->id
495 RRProviderPtr provider;
505 provider = pScrPriv->provider;
506 primary_provider = primaryPriv->provider;
508 if (!provider || !primary_provider)
511 if ((provider->capabilities & RR_Capability_SinkOutput) &&
513 pScrPriv->rrProviderSetOutputSource(pScreen, provider, primary_provider);
520 if ((provider->capabilities & RR_Capability_SourceOffload) &&
522 pScrPriv->rrProviderSetOffloadSink(pScreen, provider, primary_provider);