ESPHome 2026.6.0-dev
Loading...
Searching...
No Matches
toshiba_ac_protocol.h
Go to the documentation of this file.
1#pragma once
2
4#include "remote_base.h"
5
6namespace esphome::remote_base {
7
9 uint64_t rc_code_1;
10 uint64_t rc_code_2;
11
12 bool operator==(const ToshibaAcData &rhs) const { return rc_code_1 == rhs.rc_code_1 && rc_code_2 == rhs.rc_code_2; }
13};
14
15class ToshibaAcProtocol : public RemoteProtocol<ToshibaAcData> {
16 public:
17 void encode(RemoteTransmitData *dst, const ToshibaAcData &data) override;
18 optional<ToshibaAcData> decode(RemoteReceiveData src) override;
19 void dump(const ToshibaAcData &data) override;
20};
21
22DECLARE_REMOTE_PROTOCOL(ToshibaAc)
23
24template<typename... Ts> class ToshibaAcAction : public RemoteTransmitterActionBase<Ts...> {
25 public:
26 TEMPLATABLE_VALUE(uint64_t, rc_code_1)
27 TEMPLATABLE_VALUE(uint64_t, rc_code_2)
28
29 void encode(RemoteTransmitData *dst, Ts... x) override {
30 ToshibaAcData data{};
31 data.rc_code_1 = this->rc_code_1_.value(x...);
32 data.rc_code_2 = this->rc_code_2_.value(x...);
33 ToshibaAcProtocol().encode(dst, data);
34 }
35};
36
37} // namespace esphome::remote_base
void dump(const ToshibaAcData &data) override
optional< ToshibaAcData > decode(RemoteReceiveData src) override
void encode(RemoteTransmitData *dst, const ToshibaAcData &data) override
const void * src
Definition hal.h:64
bool operator==(const ToshibaAcData &rhs) const
uint16_t x
Definition tt21100.cpp:5