Infrared4Arduino 1.2.3
Loading...
Searching...
No Matches
IrSenderNonMod.h
Go to the documentation of this file.
1/*
2Copyright (C) 2015 Bengt Martensson.
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation; either version 2 of the License, or (at
7your option) any later version.
8
9This program is distributed in the hope that it will be useful, but
10WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12General Public License for more details.
13
14You should have received a copy of the GNU General Public License along with
15this program. If not, see http://www.gnu.org/licenses/.
16*/
17
18#pragma once
19
20#include <Arduino.h>
21#include "InfraredTypes.h"
22#include "IrSender.h"
23
29class IrSenderNonMod : public IrSender {
30private:
31 bool const invert;
32 void enable(frequency_t frequency __attribute__((unused)), dutycycle_t d __attribute__((unused)) = Board::defaultDutyCycle) {};
33 void sendSpace(microseconds_t time);
34 void sendMark(microseconds_t time);
35
36public:
37 IrSenderNonMod(pin_t pin, bool invert = false);
38
44 void sendNonModulated(const IrSequence& irSequence, unsigned int times = 1U);
45};
This file defines some general data types that are used in the library.
int8_t dutycycle_t
Type for duty cycle in percent.
Definition: InfraredTypes.h:36
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:31
uint8_t pin_t
Type for GPIO pin, compatible with Arduino libs.
Definition: InfraredTypes.h:41
static constexpr dutycycle_t defaultDutyCycle
Default duty cycle to use.
Definition: Board.h:69
IrSender implementation without modulation, selectively with inverted output.
void sendNonModulated(const IrSequence &irSequence, unsigned int times=1U)
Sends the IrSequence as argument.
Abstract base class for all sending classes.
Definition: IrSender.h:27
This class consists of a vector of durations.
Definition: IrSequence.h:11