Infrared4Arduino
IrSequenceReader.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "IrSignal.h"
4 #include "IrReader.h"
5 
10 class IrSequenceReader : public IrReader {
11 private:
12  IrSequence irSequence;
13 
14 public:
15  IrSequenceReader() : irSequence() {
16  };
17 
18  IrSequenceReader(const IrSequenceReader& orig) : IrReader(),irSequence(orig.irSequence) {
19  };
20 
21  IrSequenceReader(const IrSequence& irSequence_) : IrReader(),irSequence(irSequence_) {
22  };
23 
24  virtual ~IrSequenceReader() {
25  };
26 
27  virtual frequency_t getFrequency() const {
29  };
30 
31  void receive() {
32  };
33 
34  bool isReady() const {
35  return true;
36  };
37 
38  size_t getDataLength() const {
39  return irSequence.getLength();
40  };
41 
42  microseconds_t getDuration(unsigned int index) const {
43  return irSequence.getDurations()[index];
44  };
45 };
static const frequency_t defaultFrequency
Definition: IrSignal.h:12
IrSequenceReader(const IrSequenceReader &orig)
bool isReady() const
Returns true if there is collected data.
uint16_t microseconds_t
Type for durations in micro seconds.
Definition: InfraredTypes.h:15
uint32_t frequency_t
Type for modulation frequency in Hz.
Definition: InfraredTypes.h:32
microseconds_t getDuration(unsigned int index) const
Returns the index-th duration, if possible.
const microseconds_t * getDurations() const
Definition: IrSequence.h:56
size_t getLength() const
Returns the length of the data.
Definition: IrSequence.h:48
virtual frequency_t getFrequency() const
Returns frequency of received signal.
size_t getDataLength() const
Returns the number of collected durations.
virtual ~IrSequenceReader()
Abstract base class for all IR readers, capturing or receiving.
Definition: IrReader.h:30
void receive()
Convenience function: enable, wait until data is collected or timeout has occured,...
IrSequenceReader(const IrSequence &irSequence_)
This class packs an IrSequence into a dummy, immutable IrReader.
This class consists of a vector of durations.
Definition: IrSequence.h:11