Lines Matching refs:sequence

258     retval.sequence = buffer->GetSeqNum();
391 config.width, config.height, retval.sequence, uniqueId_);
430 DeleteBufferInCache(retval.sequence);
440 retval.sequence = buffer->GetSeqNum();
441 bufferQueueCache_[retval.sequence].config = config;
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);
470 bufferQueueCache_[retval.sequence].state = BUFFER_STATE_REQUESTED;
471 retval.fence = bufferQueueCache_[retval.sequence].fence;
484 config.width, config.height, retval.sequence, retval.buffer->GetConsumerAttachBufferFlag(), uniqueId_);
486 producerCacheList_.push_back(retval.sequence);
495 config.width, config.height, retval.sequence, retval.fence->Get(), uniqueId_);
499 SURFACE_TRACE_NAME_FMT("%s:%u", name_.c_str(), retval.sequence);
507 GSError BufferQueue::CancelBuffer(uint32_t sequence, sptr<BufferExtraData> bedata)
509 SURFACE_TRACE_NAME_FMT("CancelBuffer name: %s queueId: %" PRIu64 " sequence: %u",
510 name_.c_str(), uniqueId_, sequence);
516 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
520 if (bufferQueueCache_[sequence].state != BUFFER_STATE_REQUESTED &&
521 bufferQueueCache_[sequence].state != BUFFER_STATE_ATTACHED) {
524 bufferQueueCache_[sequence].state = BUFFER_STATE_RELEASED;
525 freeList_.push_back(sequence);
526 if (bufferQueueCache_[sequence].buffer == nullptr) {
527 BLOGE("cache buffer is nullptr, sequence:%{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
530 bufferQueueCache_[sequence].buffer->SetExtraData(bedata);
534 BLOGD("Success Buffer id: %{public}d, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
539 GSError BufferQueue::CheckBufferQueueCache(uint32_t sequence)
542 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
543 BLOGE("no find seq: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
548 auto &state = bufferQueueCache_[sequence].state;
551 sequence, state, uniqueId_);
558 GSError BufferQueue::DelegatorQueueBuffer(uint32_t sequence, sptr<SyncFence> fence)
568 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
571 bufferQueueCache_[sequence].state = BUFFER_STATE_ACQUIRED;
572 buffer = bufferQueueCache_[sequence].buffer;
602 GSError BufferQueue::FlushBuffer(uint32_t sequence, sptr<BufferExtraData> bedata,
605 SURFACE_TRACE_NAME_FMT("FlushBuffer name: %s queueId: %" PRIu64 " sequence: %u",
606 name_.c_str(), uniqueId_, sequence);
621 sret = CheckBufferQueueCache(sequence);
631 CancelBuffer(sequence, bedata);
636 sret = DoFlushBuffer(sequence, bedata, fence, config);
642 sequence, fence->Get(), uniqueId_);
645 sret = DelegatorQueueBuffer(sequence, fence);
703 GSError BufferQueue::ReleaseLastFlushedBuffer(uint32_t sequence)
706 name_.c_str(), uniqueId_, sequence);
708 if (acquireLastFlushedBufSequence_ == INVALID_SEQUENCE || acquireLastFlushedBufSequence_ != sequence) {
709 BLOGE("ReleaseLastFlushedBuffer lastFlushBuffer:%{public}d sequence:%{public}d, uniqueId: %{public}" PRIu64,
710 acquireLastFlushedBufSequence_, sequence, uniqueId_);
718 GSError BufferQueue::DoFlushBuffer(uint32_t sequence, sptr<BufferExtraData> bedata,
722 name_.c_str(), uniqueId_, sequence);
724 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
725 BLOGE("bufferQueueCache not find sequence:%{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
728 if (bufferQueueCache_[sequence].isDeleting) {
729 DeleteBufferInCache(sequence);
730 BLOGD("DoFlushBuffer delete seq: %{public}d, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
735 bufferQueueCache_[sequence].state = BUFFER_STATE_FLUSHED;
736 dirtyList_.push_back(sequence);
737 bufferQueueCache_[sequence].buffer->SetExtraData(bedata);
738 bufferQueueCache_[sequence].fence = fence;
739 bufferQueueCache_[sequence].damages = config.damages;
740 lastFlusedSequence_ = sequence;
743 bufferQueueCache_[sequence].buffer->SetSurfaceBufferTransform(transform_);
745 uint64_t usage = static_cast<uint32_t>(bufferQueueCache_[sequence].config.usage);
748 auto sret = bufferQueueCache_[sequence].buffer->FlushCache();
751 sret, sequence, uniqueId_);
755 SetDesiredPresentTimestampAndUiTimestamp(sequence, config.desiredPresentTimestamp, config.timestamp);
766 DumpToFileAsync(GetRealPid(), name_, bufferQueueCache_[sequence].buffer);
773 void BufferQueue::SetDesiredPresentTimestampAndUiTimestamp(uint32_t sequence, int64_t desiredPresentTimestamp,
779 bufferQueueCache_[sequence].desiredPresentTimestamp = static_cast<int64_t>(uiTimestamp);
781 bufferQueueCache_[sequence].desiredPresentTimestamp = std::chrono::duration_cast<std::chrono::nanoseconds>(
783 bufferQueueCache_[sequence].isAutoTimestamp = true;
786 bufferQueueCache_[sequence].desiredPresentTimestamp = desiredPresentTimestamp;
788 bufferQueueCache_[sequence].timestamp = static_cast<int64_t>(uiTimestamp);
821 uint32_t sequence = buffer->GetSeqNum();
822 bufferQueueCache_[sequence].state = BUFFER_STATE_ACQUIRED;
824 fence = bufferQueueCache_[sequence].fence;
825 timestamp = bufferQueueCache_[sequence].timestamp;
826 damages = bufferQueueCache_[sequence].damages;
827 SURFACE_TRACE_NAME_FMT("acquire buffer sequence: %u", sequence);
829 sequence, fence->Get(), uniqueId_);
903 BLOGE("DropBuffer failed, ret: %{public}d, sequence: %{public}u, uniqueId: %{public}" PRIu64 ".",
927 SURFACE_TRACE_NAME_FMT("OnBufferRelease_ sequence: %u", buffer->GetSeqNum());
940 SURFACE_TRACE_NAME_FMT("onBufferReleasedForProducer sequence: %u", buffer->GetSeqNum());
967 uint32_t sequence = buffer->GetSeqNum();
968 SURFACE_TRACE_NAME_FMT("ReleaseBuffer name: %s queueId: %" PRIu64 " seq: %u", name_.c_str(), uniqueId_, sequence);
971 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
973 BLOGE("cache not find the buffer(%{public}u), uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
979 const auto &state = bufferQueueCache_[sequence].state;
987 bufferQueueCache_[sequence].state = BUFFER_STATE_RELEASED;
988 bufferQueueCache_[sequence].fence = fence;
990 if (bufferQueueCache_[sequence].isDeleting) {
991 DeleteBufferInCache(sequence);
992 BLOGD("Succ delete Buffer seq id: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
994 freeList_.push_back(sequence);
996 "uniqueId: %{public}" PRIu64 ".", sequence, fence->Get(), uniqueId_);
1010 uint32_t sequence = bufferImpl->GetSeqNum();
1012 config.width, config.height, config.usage, config.format, sequence);
1019 BLOGE("Alloc failed, sequence:%{public}u, ret:%{public}d, uniqueId: %{public}" PRIu64 ".",
1020 sequence, ret, uniqueId_);
1035 bufferQueueCache_[sequence] = ele;
1042 BLOGD("Map Success, seq: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
1043 bufferQueueCache_[sequence] = ele;
1047 sequence, ret, uniqueId_);
1053 void BufferQueue::DeleteBufferInCache(uint32_t sequence)
1055 auto it = bufferQueueCache_.find(sequence);
1058 onBufferDeleteForRSMainThread_(sequence);
1061 onBufferDeleteForRSHardwareThread_(sequence);
1063 BLOGD("DeleteBufferInCache seq: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
1065 deletingList_.push_back(sequence);
1110 GSError BufferQueue::AttachBufferUpdateStatus(std::unique_lock<std::mutex> &lock, uint32_t sequence, int32_t timeOut)
1112 BufferState state = bufferQueueCache_[sequence].state;
1114 bufferQueueCache_[sequence].state = BUFFER_STATE_ATTACHED;
1117 [this, sequence]() { return (bufferQueueCache_[sequence].state == BUFFER_STATE_RELEASED); });
1118 if (bufferQueueCache_[sequence].state == BUFFER_STATE_RELEASED) {
1119 bufferQueueCache_[sequence].state = BUFFER_STATE_ATTACHED;
1126 if (sequence == *iter) {
1143 SURFACE_TRACE_NAME_FMT("AttachBufferToQueue name: %s queueId: %" PRIu64 " sequence: %u invokerType: %u",
1147 uint32_t sequence = buffer->GetSeqNum();
1150 "uniqueId: %{public}" PRIu64 ".", sequence, bufferQueueSize_, GetUsedSize(), uniqueId_);
1153 if (bufferQueueCache_.find(sequence) != bufferQueueCache_.end()) {
1155 sequence, uniqueId_);
1172 bufferQueueCache_[sequence] = ele;
1179 SURFACE_TRACE_NAME_FMT("DetachBufferFromQueue name: %s queueId: %" PRIu64 " sequence: %u invokerType%u",
1183 uint32_t sequence = buffer->GetSeqNum();
1184 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1186 sequence, uniqueId_);
1190 if (bufferQueueCache_[sequence].state != BUFFER_STATE_REQUESTED) {
1192 sequence, bufferQueueCache_[sequence].state, uniqueId_);
1196 if (bufferQueueCache_[sequence].state != BUFFER_STATE_ACQUIRED) {
1198 sequence, bufferQueueCache_[sequence].state, uniqueId_);
1202 bufferQueueCache_.erase(sequence);
1227 uint32_t sequence = buffer->GetSeqNum();
1229 if (bufferQueueCache_.find(sequence) != bufferQueueCache_.end()) {
1230 return AttachBufferUpdateStatus(lock, sequence, timeOut);
1249 bufferQueueCache_[sequence] = ele;
1250 BLOGD("AttachBuffer release seq: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
1256 bufferQueueCache_[sequence] = ele;
1257 BLOGD("AttachBuffer no release seq: %{public}d, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
1274 uint32_t sequence = buffer->GetSeqNum();
1275 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1279 if (bufferQueueCache_[sequence].state == BUFFER_STATE_REQUESTED) {
1280 BLOGD("DetachBuffer requested seq: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
1281 } else if (bufferQueueCache_[sequence].state == BUFFER_STATE_ACQUIRED) {
1282 BLOGD("DetachBuffer acquired seq: %{public}u, uniqueId: %{public}" PRIu64 ".", sequence, uniqueId_);
1285 bufferQueueCache_[sequence].state, sequence, uniqueId_);
1289 onBufferDeleteForRSMainThread_(sequence);
1292 onBufferDeleteForRSHardwareThread_(sequence);
1294 bufferQueueCache_.erase(sequence);
1693 GSError BufferQueue::SetScalingMode(uint32_t sequence, ScalingMode scalingMode)
1696 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1699 bufferQueueCache_[sequence].scalingMode = scalingMode;
1713 GSError BufferQueue::GetScalingMode(uint32_t sequence, ScalingMode &scalingMode)
1716 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1719 scalingMode = bufferQueueCache_.at(sequence).scalingMode;
1723 GSError BufferQueue::SetMetaData(uint32_t sequence, const std::vector<GraphicHDRMetaData> &metaData)
1730 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1733 bufferQueueCache_[sequence].metaData.clear();
1734 bufferQueueCache_[sequence].metaData = metaData;
1735 bufferQueueCache_[sequence].hdrMetaDataType = HDRMetaDataType::HDR_META_DATA;
1739 GSError BufferQueue::SetMetaDataSet(uint32_t sequence, GraphicHDRMetadataKey key,
1752 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1755 bufferQueueCache_[sequence].metaDataSet.clear();
1756 bufferQueueCache_[sequence].key = key;
1757 bufferQueueCache_[sequence].metaDataSet = metaData;
1758 bufferQueueCache_[sequence].hdrMetaDataType = HDRMetaDataType::HDR_META_DATA_SET;
1762 GSError BufferQueue::QueryMetaDataType(uint32_t sequence, HDRMetaDataType &type)
1765 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1768 type = bufferQueueCache_.at(sequence).hdrMetaDataType;
1772 GSError BufferQueue::GetMetaData(uint32_t sequence, std::vector<GraphicHDRMetaData> &metaData)
1775 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1779 metaData = bufferQueueCache_.at(sequence).metaData;
1783 GSError BufferQueue::GetMetaDataSet(uint32_t sequence, GraphicHDRMetadataKey &key,
1787 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1791 key = bufferQueueCache_.at(sequence).key;
1792 metaData = bufferQueueCache_.at(sequence).metaDataSet;
1839 GSError BufferQueue::SetPresentTimestamp(uint32_t sequence, const GraphicPresentTimestamp &timestamp)
1842 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1845 bufferQueueCache_[sequence].presentTimestamp = timestamp;
1849 GSError BufferQueue::GetPresentTimestamp(uint32_t sequence, GraphicPresentTimestampType type, int64_t &time)
1852 if (bufferQueueCache_.find(sequence) == bufferQueueCache_.end()) {
1855 if (type != bufferQueueCache_.at(sequence).presentTimestamp.type) {
1857 "uniqueId: %{public}" PRIu64 ".", sequence, type,
1858 bufferQueueCache_.at(sequence).presentTimestamp.type, uniqueId_);
1863 time = bufferQueueCache_.at(sequence).presentTimestamp.time;
1867 time = bufferQueueCache_.at(sequence).presentTimestamp.time - bufferQueueCache_.at(sequence).timestamp;
1872 sequence, type, uniqueId_);
1942 result += " sequence = " + std::to_string(it->first) +