Arduino PulseWire Transceiver Library
Loading...
Searching...
No Matches
Data Structures
Here are the data structures with brief descriptions:
[detail level 12]
 Npulsewire
 CCodecAbstract base class for IR protocol encoding and decoding
 CCustomPreambleCustomPreamble: Allows users to define their own preamble by setting expected edges. Useful for custom protocols or testing
 CCustomPreambleUsCustomPreambleUs: Allows users to define their own preamble by setting expected edges. Useful for custom protocols or testing
 CDifferentialManchesterCodecDifferential Manchester encoding/decoding utility class for IR communication
 CDigitalSignalDigital output signal implementation using digitalWrite
 CIRMultiProtocolIRMultiProtocol: Handles detection and delegation for multiple IR protocols
 CIRProtocolIRProtocol: Represents a specific IR protocol with all its parameters
 CIRProtocolDetectorProtocolDetector: Uses interrupt edge logic to detect IR protocol by testing all known preambles
 CIRReceiverReceiver class for IR communication
 CIRTransceiverIRTransceiver: High-level interface for sending and receiving IR signals
 CIRTrasmitterTransmitter class for IR communication
 CISRManagerManager for handling multiple ISR instances on platforms without attachInterruptArg
 CLoggerSimple logger class for debugging and logging messages
 CManchesterCodecManchester encoding/decoding utility class for IR communication
 CManchesterPreambleCustom Manchester preamble detector: run-in of alternating edges plus unique start pulse
 CNoPreambleNoPreamble: For protocols that do not require a preamble. Always returns true for detect, does nothing for getEdges, and preambleLength is 0
 CNRZCodecNRZ (Non-Return-to-Zero) codec for serial-like encoding/decoding with start/stop bit framing
 CNRZPreambleA Preamble implementation for NRZ protocols: alternating edges at full bit period, ending with a HIGH level to match NRZ idle state. This provides a clear synchronization pattern while ensuring the line is in the correct idle state after the preamble, which is crucial for accurate decoding of NRZ signals
 COutputEdgeSpecifies a single IR signal segment for protocol-agnostic transmission
 CPreambleAbstract base class for preamble detection and generation
 CPulseDistanceCodecPulse-distance encoding/decoding utility class for IR communication
 CPulseWidthCodecPulse-width encoding/decoding utility class for IR communication
 CPWMSignalPWM-modulated output signal implementation using analogWrite and analogWriteFrequency
 CReceiverReceiver class for communication
 CRecorderCodecCodec Wrapper that records all edges passed to decodeEdge() for later analysis or testing
 CRingBufferEfficient lock-free ring buffer for storing data
 CRxDriverAbstract base class for IR receivers
 CRxDriverArduinoInterrupt-driven Arduino RX driver for pulse-based protocols
 CRxDriverESP32High-performance ESP32 IR RX driver using the RMT peripheral and Manchester decoding
 CRxDriverIntInterrupt-capable IR RX driver interface for platforms without attachInterruptArg
 CRxDriverRP2040High-performance RP2040 IR RX driver using PIO for edge capture
 CSignalBaseAbstract base class for signal output
 CToneSignalTone-modulated output signal implementation using tone()
 CTransceiverBi-directional IR transceiver class with Stream interface and driver abstraction
 CTrasmitterTransmitter class for communication
 CTxDriverAbstract base class for IR transmitters
 CTxDriverArduinoGeneric driver for transmitting data using a specified codec and signal implementation
 CTxDriverCommonProvides common logic for transmitting signals using various framing modes
 CTxDriverESP32ESP32-specific TxDriver implementation that uses TxProtocolESP32 for transmission
 CTxDriverRP2040RP2040-specific TxDriver implementation that uses TxProtocolRP2040 for transmission
 CTxProtocolAbstract base class for defining transmission protocols
 CTxProtocolESP32ESP32-specific TxProtocol implementation using RMT for precise timing and DMA support
 CTxProtocolGenericGeneric implementation that is supported by all Arduino cores
 CTxProtocolRP2040RP2040-specific TxProtocol implementation using PIO and DMA for precise timing
 CVectorSmall, header-only vector replacement for non-STL environments