1bae4d13cSopenharmony_ci/* 2bae4d13cSopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd. 3bae4d13cSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4bae4d13cSopenharmony_ci * you may not use this file except in compliance with the License. 5bae4d13cSopenharmony_ci * You may obtain a copy of the License at 6bae4d13cSopenharmony_ci * 7bae4d13cSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8bae4d13cSopenharmony_ci * 9bae4d13cSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10bae4d13cSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11bae4d13cSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12bae4d13cSopenharmony_ci * See the License for the specific language governing permissions and 13bae4d13cSopenharmony_ci * limitations under the License. 14bae4d13cSopenharmony_ci */ 15bae4d13cSopenharmony_ci 16bae4d13cSopenharmony_ci#include "fifo_cache_data.h" 17bae4d13cSopenharmony_cinamespace OHOS { 18bae4d13cSopenharmony_cinamespace Sensors { 19bae4d13cSopenharmony_ci 20bae4d13cSopenharmony_ciFifoCacheData::FifoCacheData() : periodCount_(0), channel_(nullptr) 21bae4d13cSopenharmony_ci{} 22bae4d13cSopenharmony_ci 23bae4d13cSopenharmony_ciFifoCacheData::~FifoCacheData() 24bae4d13cSopenharmony_ci{ 25bae4d13cSopenharmony_ci fifoCacheData_.clear(); 26bae4d13cSopenharmony_ci} 27bae4d13cSopenharmony_ci 28bae4d13cSopenharmony_civoid FifoCacheData::InitFifoCache() 29bae4d13cSopenharmony_ci{ 30bae4d13cSopenharmony_ci periodCount_ = 0; 31bae4d13cSopenharmony_ci fifoCacheData_.clear(); 32bae4d13cSopenharmony_ci} 33bae4d13cSopenharmony_ci 34bae4d13cSopenharmony_civoid FifoCacheData::SetPeriodCount(uint64_t periodCount) 35bae4d13cSopenharmony_ci{ 36bae4d13cSopenharmony_ci periodCount_ = periodCount; 37bae4d13cSopenharmony_ci} 38bae4d13cSopenharmony_ci 39bae4d13cSopenharmony_ciuint64_t FifoCacheData::GetPeriodCount() const 40bae4d13cSopenharmony_ci{ 41bae4d13cSopenharmony_ci return periodCount_; 42bae4d13cSopenharmony_ci} 43bae4d13cSopenharmony_ci 44bae4d13cSopenharmony_civoid FifoCacheData::SetFifoCacheData(const std::vector<SensorData> &fifoCacheData) 45bae4d13cSopenharmony_ci{ 46bae4d13cSopenharmony_ci fifoCacheData_ = fifoCacheData; 47bae4d13cSopenharmony_ci} 48bae4d13cSopenharmony_ci 49bae4d13cSopenharmony_cistd::vector<SensorData> FifoCacheData::GetFifoCacheData() const 50bae4d13cSopenharmony_ci{ 51bae4d13cSopenharmony_ci return fifoCacheData_; 52bae4d13cSopenharmony_ci} 53bae4d13cSopenharmony_ci 54bae4d13cSopenharmony_civoid FifoCacheData::SetChannel(const sptr<SensorBasicDataChannel> &channel) 55bae4d13cSopenharmony_ci{ 56bae4d13cSopenharmony_ci channel_ = channel; 57bae4d13cSopenharmony_ci} 58bae4d13cSopenharmony_ci 59bae4d13cSopenharmony_cisptr<SensorBasicDataChannel> FifoCacheData::GetChannel() const 60bae4d13cSopenharmony_ci{ 61bae4d13cSopenharmony_ci return channel_.promote(); 62bae4d13cSopenharmony_ci} 63bae4d13cSopenharmony_ci} // namespace Sensors 64bae4d13cSopenharmony_ci} // namespace OHOS 65