Lines Matching refs:retval
231 struct IBufferProducer::RequestBufferReturnValue& retval)
238 auto ret = consumerDelegator->DequeueBuffer(config, bedata, retval);
244 ret = retval.buffer->Map();
249 retval.buffer->SetSurfaceBufferWidth(retval.buffer->GetWidth());
250 retval.buffer->SetSurfaceBufferHeight(retval.buffer->GetHeight());
256 struct IBufferProducer::RequestBufferReturnValue& retval)
258 retval.sequence = buffer->GetSeqNum();
260 retval.fence = SyncFence::InvalidFence();
339 struct IBufferProducer::RequestBufferReturnValue &retval)
342 return DelegatorDequeueBuffer(wpCSurfaceDelegator_, config, bedata, retval);
361 sptr<SurfaceBuffer>& buffer = retval.buffer;
364 return ReuseBuffer(config, bedata, retval);
378 return ReuseBuffer(config, bedata, retval);
389 SetReturnValue(buffer, bedata, retval);
391 config.width, config.height, retval.sequence, uniqueId_);
424 struct IBufferProducer::RequestBufferReturnValue &retval)
430 DeleteBufferInCache(retval.sequence);
439 retval.buffer = buffer;
440 retval.sequence = buffer->GetSeqNum();
441 bufferQueueCache_[retval.sequence].config = config;
446 struct IBufferProducer::RequestBufferReturnValue &retval)
448 if (retval.buffer == nullptr) {
452 retval.sequence = retval.buffer->GetSeqNum();
453 if (bufferQueueCache_.find(retval.sequence) == bufferQueueCache_.end()) {
454 BLOGE("cache not find the buffer(%{public}u), uniqueId: %{public}" PRIu64 ".", retval.sequence, uniqueId_);
457 auto &cacheConfig = bufferQueueCache_[retval.sequence].config;
459 cacheConfig.width, cacheConfig.height, cacheConfig.usage, cacheConfig.format, retval.sequence);
461 bool needRealloc = (config != bufferQueueCache_[retval.sequence].config);
464 auto sret = ReallocBufferLocked(config, retval);
470 bufferQueueCache_[retval.sequence].state = BUFFER_STATE_REQUESTED;
471 retval.fence = bufferQueueCache_[retval.sequence].fence;
472 bedata = retval.buffer->GetExtraData();
473 SetSurfaceBufferHebcMetaLocked(retval.buffer);
474 SetSurfaceBufferGlobalAlphaUnlocked(retval.buffer);
476 auto &dbs = retval.deletingBuffers;
481 if (needRealloc || isShared_ || producerCacheClean_ || retval.buffer->GetConsumerAttachBufferFlag()) {
484 config.width, config.height, retval.sequence, retval.buffer->GetConsumerAttachBufferFlag(), uniqueId_);
486 producerCacheList_.push_back(retval.sequence);
491 retval.buffer->SetConsumerAttachBufferFlag(false);
495 config.width, config.height, retval.sequence, retval.fence->Get(), uniqueId_);
496 retval.buffer = nullptr;
499 SURFACE_TRACE_NAME_FMT("%s:%u", name_.c_str(), retval.sequence);
502 releaseFenceThread.TrackFence(retval.fence);