I am creating a new class that is composed of two other classes. I am using initializing list in the constructor. When I call the constructor of this class I get the following message:
InfraRedReceiverVs1838b.cpp:9: undefined reference to `IRrecv::IRrecv(int)'
Line 9 is the line that initializes IRrecv class.
Header file of my class
#include "Arduino.h"
#include "InfraRedReceiverVs1838b.h"
#include "IRremote.h"
#include "IRremoteInt.h"
//Constructor
VS1838B::VS1838B(int pinoReceptorIR)
:_receptorIR (pinoReceptorIR), _bufferSinalRecebido()
{
_pinoInput = pinoReceptorIR;
}
Source file of my class
#ifndef INFRAREDRECEIVERVS1838B_H
#define INFRAREDRECEIVERVS1838B_H
#include "Arduino.h"
#include "IRremote.h"
#include "IRremoteInt.h"
class VS1838B{
public:
//Constructor
VS1838B(int pinoReceptorIR);
//Atributes
IRrecv _receptorIR;
decode_results _bufferSinalRecebido;
int _pinoInput;
};
#endif /* INFRAREDRECEIVERVS1838B_H */
IRremote.h file that keeps the IRrecv class
// main class for receiving IR
class IRrecv
{
public:
IRrecv(int recvpin);
void blink13(int blinkflag);
int decode(decode_results *results);
void enableIRIn();
void resume();
private:
// These are called by decode
int getRClevel(decode_results *results, int *offset, int *used, int t1);
long decodeNEC(decode_results *results);
long decodeSony(decode_results *results);
long decodeSanyo(decode_results *results);
long decodeMitsubishi(decode_results *results);
long decodeRC5(decode_results *results);
long decodeRC6(decode_results *results);
long decodePanasonic(decode_results *results);
long decodeLG(decode_results *results);
long decodeJVC(decode_results *results);
long decodeSAMSUNG(decode_results *results);
long decodeHash(decode_results *results);
int compare(unsigned int oldval, unsigned int newval);
}
;
IRremote.cpp file that keeps the IRrecv class
#include "IRremote.h"
#include "IRremoteInt.h"
// Provides ISR
#include <avr/interrupt.h>
IRrecv::IRrecv(int recvpin)
{
irparams.recvpin = recvpin;
irparams.blinkflag = 0;
}
I am pretty sure that is not a include problem. Is there something wrong with my initialize list? Thanks in advance.