mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-04-20 15:07:17 -04:00
52 lines
1.3 KiB
C++
52 lines
1.3 KiB
C++
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
|
|
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
|
|
|
|
#pragma once
|
|
|
|
#include <Service/Message.hpp>
|
|
#include <bsp/common.hpp>
|
|
|
|
namespace sys
|
|
{
|
|
|
|
class HoldCpuFrequencyMessage : public sys::DataMessage
|
|
{
|
|
public:
|
|
HoldCpuFrequencyMessage(std::string sentinelName, bsp::CpuFrequencyHz request)
|
|
: sys::DataMessage(MessageType::SystemManagerCpuFrequency), sentinelName(std::move(sentinelName)),
|
|
frequencyRequested(request)
|
|
{}
|
|
|
|
[[nodiscard]] auto getRequest() const noexcept
|
|
{
|
|
return frequencyRequested;
|
|
};
|
|
|
|
[[nodiscard]] auto getName() const
|
|
{
|
|
return sentinelName;
|
|
};
|
|
|
|
private:
|
|
std::string sentinelName;
|
|
bsp::CpuFrequencyHz frequencyRequested = bsp::CpuFrequencyHz::Level_1;
|
|
};
|
|
|
|
class ReleaseCpuFrequencyMessage : public sys::DataMessage
|
|
{
|
|
public:
|
|
explicit ReleaseCpuFrequencyMessage(std::string sentinelName)
|
|
: sys::DataMessage(MessageType::SystemManagerCpuFrequency), sentinelName(std::move(sentinelName))
|
|
{}
|
|
|
|
[[nodiscard]] auto getName() const
|
|
{
|
|
return sentinelName;
|
|
};
|
|
|
|
private:
|
|
std::string sentinelName;
|
|
};
|
|
|
|
} // namespace sys
|