Arduino PulseWire Transceiver Library
Loading...
Searching...
No Matches
TxDriver.h
1#pragma once
2#include <stddef.h>
3#include <stdint.h>
4namespace pulsewire {
5
9enum class FramingMode {
10 FixedSize, // Send when buffer is full or flushed
11 WriteBytes, // Send immediately with writeBytes
12};
13
17class TxDriver {
18 public:
19 virtual void setFrameSize(uint16_t size) = 0;
20 virtual void setFramingMode(FramingMode mode) = 0;
21 virtual int write(uint8_t byte) = 0;
22 virtual size_t write(const uint8_t* data, size_t len) = 0;
23 virtual bool begin(uint32_t bitFrequencyHz) = 0;
24 virtual void flush() {};
25 virtual void end() {};
26};
27
28} // namespace pulsewire
Abstract base class for IR transmitters.
Definition TxDriver.h:17
Small, header-only vector replacement for non-STL environments.
Definition Vector.h:29