180922886Sopenharmony_ci/* 280922886Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 380922886Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 480922886Sopenharmony_ci * you may not use this file except in compliance with the License. 580922886Sopenharmony_ci * You may obtain a copy of the License at 680922886Sopenharmony_ci * 780922886Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 880922886Sopenharmony_ci * 980922886Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1080922886Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1180922886Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1280922886Sopenharmony_ci * See the License for the specific language governing permissions and 1380922886Sopenharmony_ci * limitations under the License. 1480922886Sopenharmony_ci */ 1580922886Sopenharmony_ci 1680922886Sopenharmony_ci#include "avqueue_info.h" 1780922886Sopenharmony_ci#include "avsession_log.h" 1880922886Sopenharmony_ci 1980922886Sopenharmony_cinamespace OHOS::AVSession { 2080922886Sopenharmony_cibool AVQueueInfo::Marshalling(Parcel& parcel) const 2180922886Sopenharmony_ci{ 2280922886Sopenharmony_ci return parcel.WriteString(bundleName_) && 2380922886Sopenharmony_ci parcel.WriteString(avQueueName_) && 2480922886Sopenharmony_ci parcel.WriteString(avQueueId_) && 2580922886Sopenharmony_ci parcel.WriteString(avQueueImageUri_) && 2680922886Sopenharmony_ci parcel.WriteParcelable(avQueueImage_.get()); 2780922886Sopenharmony_ci} 2880922886Sopenharmony_ci 2980922886Sopenharmony_cibool AVQueueInfo::Unmarshalling(Parcel& data) 3080922886Sopenharmony_ci{ 3180922886Sopenharmony_ci if (!data.ReadString(bundleName_) || 3280922886Sopenharmony_ci !data.ReadString(avQueueName_) || 3380922886Sopenharmony_ci !data.ReadString(avQueueId_) || 3480922886Sopenharmony_ci !data.ReadString(avQueueImageUri_)) { 3580922886Sopenharmony_ci SLOGE("read AVQueueInfo failed"); 3680922886Sopenharmony_ci return false; 3780922886Sopenharmony_ci } 3880922886Sopenharmony_ci avQueueImage_ = std::shared_ptr<AVSessionPixelMap>(data.ReadParcelable<AVSessionPixelMap>()); 3980922886Sopenharmony_ci if (avQueueImage_ == nullptr) { 4080922886Sopenharmony_ci SLOGE("read AVQueueInfo PixelMap failed"); 4180922886Sopenharmony_ci return false; 4280922886Sopenharmony_ci } 4380922886Sopenharmony_ci return true; 4480922886Sopenharmony_ci} 4580922886Sopenharmony_ci 4680922886Sopenharmony_civoid AVQueueInfo::SetBundleName(const std::string& bundleName) 4780922886Sopenharmony_ci{ 4880922886Sopenharmony_ci bundleName_ = bundleName; 4980922886Sopenharmony_ci} 5080922886Sopenharmony_ci 5180922886Sopenharmony_cistd::string AVQueueInfo::GetBundleName() const 5280922886Sopenharmony_ci{ 5380922886Sopenharmony_ci return bundleName_; 5480922886Sopenharmony_ci} 5580922886Sopenharmony_ci 5680922886Sopenharmony_civoid AVQueueInfo::SetAVQueueName(const std::string& avQueueName) 5780922886Sopenharmony_ci{ 5880922886Sopenharmony_ci avQueueName_ = avQueueName; 5980922886Sopenharmony_ci} 6080922886Sopenharmony_ci 6180922886Sopenharmony_cistd::string AVQueueInfo::GetAVQueueName() const 6280922886Sopenharmony_ci{ 6380922886Sopenharmony_ci return avQueueName_; 6480922886Sopenharmony_ci} 6580922886Sopenharmony_ci 6680922886Sopenharmony_civoid AVQueueInfo::SetAVQueueId(const std::string& avQueueId) 6780922886Sopenharmony_ci{ 6880922886Sopenharmony_ci avQueueId_ = avQueueId; 6980922886Sopenharmony_ci} 7080922886Sopenharmony_ci 7180922886Sopenharmony_cistd::string AVQueueInfo::GetAVQueueId() const 7280922886Sopenharmony_ci{ 7380922886Sopenharmony_ci return avQueueId_; 7480922886Sopenharmony_ci} 7580922886Sopenharmony_ci 7680922886Sopenharmony_civoid AVQueueInfo::SetAVQueueImage(const std::shared_ptr<AVSessionPixelMap>& avQueueImage) 7780922886Sopenharmony_ci{ 7880922886Sopenharmony_ci avQueueImage_ = avQueueImage; 7980922886Sopenharmony_ci} 8080922886Sopenharmony_ci 8180922886Sopenharmony_cistd::shared_ptr<AVSessionPixelMap> AVQueueInfo::GetAVQueueImage() const 8280922886Sopenharmony_ci{ 8380922886Sopenharmony_ci return avQueueImage_; 8480922886Sopenharmony_ci} 8580922886Sopenharmony_ci 8680922886Sopenharmony_civoid AVQueueInfo::SetAVQueueLength(const int32_t avQueueLength) 8780922886Sopenharmony_ci{ 8880922886Sopenharmony_ci avQueueLength_ = avQueueLength; 8980922886Sopenharmony_ci} 9080922886Sopenharmony_ci 9180922886Sopenharmony_ciint32_t AVQueueInfo::GetAVQueueLength() const 9280922886Sopenharmony_ci{ 9380922886Sopenharmony_ci return avQueueLength_; 9480922886Sopenharmony_ci} 9580922886Sopenharmony_ci 9680922886Sopenharmony_civoid AVQueueInfo::SetAVQueueImageUri(const std::string& avQueueImageUri) 9780922886Sopenharmony_ci{ 9880922886Sopenharmony_ci avQueueImageUri_ = avQueueImageUri; 9980922886Sopenharmony_ci} 10080922886Sopenharmony_ci 10180922886Sopenharmony_cistd::string AVQueueInfo::GetAVQueueImageUri() const 10280922886Sopenharmony_ci{ 10380922886Sopenharmony_ci return avQueueImageUri_; 10480922886Sopenharmony_ci} 10580922886Sopenharmony_ci} // namespace OHOS::AVSession