1 #ifndef IRRECEIVERPOLL_H
2 #define IRRECEIVERPOLL_H
20 boolean pullup =
false,
38 return durationData[i];
67 boolean searchForStart();
71 void recordDuration(
unsigned long t);
An implementation of IrReceiver using polling of the input pin.
void setBeginningTimeout(milliseconds_t timeOut)
static const milliseconds_t defaultBeginningTimeout
uint16_t microseconds_t
Type for durations in micro seconds.
static const microseconds_t defaultMarkExcess
static const milliseconds_t defaultEndingTimeout
milliseconds_t getBeginningTimeout() const
uint8_t pin_t
Type for GPIO pin, compatible with Arduino libs.
virtual boolean isEmpty() const
milliseconds_t getEndingTimeout() const
uint16_t milliseconds_t
Type for durations in milli seconds.
Abstract base class for demodulating IR receivers.
void disable()
Stop reception of IR data.
boolean isReady() const
Returns true if there is collected data.
microseconds_t getDuration(unsigned int i) const
Returns the index-th duration, if possible.
void enable()
In this class, enable does the actual collection of the data.
boolean timeouted
True if last receive ended with a timeout.
size_t getDataLength() const
Returns the number of collected durations.
milliseconds_t endingTimeout
static const pin_t defaultPin
IrReceiverPoll(size_t captureLength=defaultCaptureLength, pin_t pin=defaultPin, boolean pullup=false, microseconds_t markExcess=defaultMarkExcess, milliseconds_t beginningTimeout=defaultBeginningTimeout, milliseconds_t endingTimeout=defaultEndingTimeout)
milliseconds_t beginningTimeout
static const size_t defaultCaptureLength
void setEndingTimeout(milliseconds_t timeOut)
int16_t markExcess
Microseconds subtracted from pulses and added to gaps.