~aleteoryx/muditaos

ref: sign_test muditaos/module-apps/application-meditation/data/OptionsData.cpp -rw-r--r-- 1.1 KiB
a217eeb3 — Dawid Wojtas [BH-2024] Fix lack of alarm directory after updating software 1 year, 5 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Copyright (c) 2017-2023, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

#include "OptionsData.hpp"
#include "Constants.hpp"

namespace gui
{
    OptionsData::OptionsData(OptionParams params) : params(params)
    {}

    [[nodiscard]] std::chrono::seconds OptionsData::getPreparationTime() const noexcept
    {
        return params.preparationTime.get();
    }

    bool OptionsData::setPreparationTime(std::chrono::seconds value)
    {
        bool result   = true;
        const auto it = std::find(
            std::begin(Constants::Params::preparationTimes), std::end(Constants::Params::preparationTimes), value);
        if (it == std::end(Constants::Params::preparationTimes)) {
            value  = Constants::Params::defaultPreparationTime;
            result = false;
        }
        params.preparationTime.set(value);
        return result;
    }

    [[nodiscard]] bool OptionsData::isCounterVisible() const noexcept
    {
        return params.showCounter.get();
    }

    void OptionsData::setCounterVisible(bool value)
    {
        params.showCounter.set(value);
    }
} // namespace gui