esphome-api-client 0.5.0
Modern C++17 client for the ESPHome native API (plaintext + Noise)
Loading...
Searching...
No Matches
cover.hpp
Go to the documentation of this file.
1#pragma once
2
5
9
10#include <cstdint>
11#include <memory>
12#include <optional>
13#include <string>
14
15namespace esphome::api {
16
17namespace proto {
18class ListEntitiesCoverResponse;
19class CoverStateResponse;
20class CoverCommandRequest;
21} // namespace proto
22
25 bool assumed_state = false;
26 bool supports_position = false;
27 bool supports_tilt = false;
28 std::string device_class;
29 bool supports_stop = false;
30};
31
33struct CoverState {
34 std::uint32_t key = 0;
35 float position = 0.0F;
36 float tilt = 0.0F;
38};
39
42 std::uint32_t key = 0;
43 std::optional<float> position;
44 std::optional<float> tilt;
45 bool stop = false;
46};
47
48CoverInfo parse_cover_info(const proto::ListEntitiesCoverResponse& msg);
49CoverState parse_cover_state(const proto::CoverStateResponse& msg);
50std::unique_ptr<ProtoMessage> to_message(const CoverCommand& cmd);
51
52} // namespace esphome::api
Common entity metadata shared by every entity domain.
Typed mirrors of the ESPHome protobuf enums.
Definition bytes.hpp:10
std::unique_ptr< ProtoMessage > to_message(const AlarmControlPanelCommand &cmd)
CoverOperation
Mirror of proto enum CoverOperation.
Definition enums.hpp:33
CoverInfo parse_cover_info(const proto::ListEntitiesCoverResponse &msg)
CoverState parse_cover_state(const proto::CoverStateResponse &msg)
Lightweight base class for every generated ESPHome API message.
A command targeting a cover entity.
Definition cover.hpp:41
std::optional< float > position
Definition cover.hpp:43
std::uint32_t key
Definition cover.hpp:42
std::optional< float > tilt
Definition cover.hpp:44
bool stop
Definition cover.hpp:45
Static description of a cover entity.
Definition cover.hpp:24
bool assumed_state
Definition cover.hpp:25
bool supports_stop
Definition cover.hpp:29
bool supports_position
Definition cover.hpp:26
std::string device_class
Definition cover.hpp:28
bool supports_tilt
Definition cover.hpp:27
A cover's reported state.
Definition cover.hpp:33
float tilt
Definition cover.hpp:36
std::uint32_t key
Definition cover.hpp:34
CoverOperation current_operation
Definition cover.hpp:37
float position
Definition cover.hpp:35
Fields present on every ListEntities*Response.
Definition entity.hpp:16