14 typedef uint16_t prontoInt;
16 static const prontoInt learnedToken = 0x0000;
17 static const prontoInt learnedNonModulatedToken = 0x0100;
18 static const unsigned int bitsInHexadecimal = 4;
19 static const unsigned int digitsInProntoNumber = 4;
20 static const unsigned int numbersInPreamble = 4;
21 static const unsigned int hexMask = 0xF;
22 static const unsigned int charsInPreamble = numbersInPreamble * (digitsInProntoNumber + 1);
23 static constexpr
double prontoFreqConst = 0.241246;
24 static const uint32_t prontoConst = (uint32_t) (1E6 / prontoFreqConst);
25 static const prontoInt fallbackFrequencyCode = 0x0040;
30 static IrSequence *mkSequence(
const uint16_t *data,
size_t pairs,
double timebase);
34 static prontoInt toFrequencyCode(
frequency_t frequency);
36 static size_t lengthHexString(
size_t introLength,
size_t repeatLength);
38 static char* setup(
frequency_t frequency,
size_t introLength,
size_t repeatLength);
40 static char hexDigit(
unsigned int x);
42 static unsigned int appendChar(
char *result,
unsigned int index,
char ch);
46 static unsigned int appendDigit(
char *result,
unsigned int index,
unsigned int number);
48 static unsigned int appendNumber(
char *result,
unsigned int index, prontoInt number);
50 static unsigned int appendSequence(
char *result,
unsigned int index,
const microseconds_t *data,
size_t length,
frequency_t frequency);
52 static unsigned int appendSequence(
char *result,
unsigned int index,
const IrSequence& irSequence,
frequency_t frequency);
70 #if defined(ARDUINO) & defined(ARDUINO_ARCH_AVR) static const frequency_t defaultFrequency
uint16_t microseconds_t
Type for durations in micro seconds.
uint32_t frequency_t
Type for modulation frequency in Hz.
This class models an IR signal with intro-, repeat-, and ending sequences.
static IrSignal * parse(const uint16_t *data, size_t size)
Function for parsing its input data into an IrSignal.
This class consists of a vector of durations.
This file defines some general data types that are used in the library.
static char * toProntoHex(const IrSignal &irSignal)
Function for generating a Pronto Hex string from the argument.
Static class consisting of functions for parsing a Pronto Hex string (like 0000 006C 0022 0002 015B 0...