Infrared4Arduino 1.2.3
Loading...
Searching...
No Matches
MultiDecoder.h
Go to the documentation of this file.
1#pragma once
2
3#include "IrReader.h"
4#include "IrDecoder.h"
5
9class MultiDecoder : public IrDecoder {
10public:
14 enum Type {
20 rc5
21 };
22
23private:
24 char decode[17];
25 Type type;
26
27public:
28 Type getType() const {
29 return type;
30 }
31
36 MultiDecoder(const IrReader &irReader);
37
38#ifndef DOXYGEN
39 MultiDecoder() = delete;
40 MultiDecoder(const MultiDecoder&) = delete;
41 MultiDecoder(MultiDecoder&&) = delete;
42 MultiDecoder& operator=(const MultiDecoder&) = delete;
43 MultiDecoder& operator=(MultiDecoder&&) = delete;
44#endif // ! DOXYGEN
45
46 virtual ~MultiDecoder() {
47 }
48
49 const char *getDecode() const {
50 return decode;
51 }
52};
Abstract base class for all decoder classes.
Definition: IrDecoder.h:8
Abstract base class for all IR readers, capturing or receiving.
Definition: IrReader.h:30
A preliminary multi protocol decoder.
Definition: MultiDecoder.h:9
Type getType() const
Definition: MultiDecoder.h:28
virtual ~MultiDecoder()
Definition: MultiDecoder.h:46
Type
Enum over possible outcomes of the decoder.
Definition: MultiDecoder.h:14
@ nec
NEC1 intro.
Definition: MultiDecoder.h:18
@ undecoded
decoding failed
Definition: MultiDecoder.h:17
@ noise
nothing sensible found
Definition: MultiDecoder.h:16
@ nec_ditto
NEC1 repeat.
Definition: MultiDecoder.h:19
@ timeout
beginTimeout reached
Definition: MultiDecoder.h:15
@ rc5
RC5 signal (= repeat sequence)
Definition: MultiDecoder.h:20
const char * getDecode() const
Returns a textual description the decode for human consumption.
Definition: MultiDecoder.h:49