Im having some problems connecting a signal to a slot in a 2 class, inheritance type structure.

Basically, I have a base class that is waiting for some data to change, once the data gets updated it will send a signal. I have a receiver class (it inherites from the base class) that is supposed to grab the signal and do some processing on the updated data. I have no compile or runtime errors regarding missing slots or unregistered metatypes. Also, I checked the return value of the connect call and it is succeeding. I will post some code to give a better idea of what is going on, but i feel like i have tried everything.

base class header
Qt Code:
  1. #include <QObject>
  2.  
  3. class UIBase : public QObject, public Switch::Subscriber
  4. {
  5. Q_OBJECT
  6. public:
  7. UIBase();
  8.  
  9. void onData(const std::string&);
  10.  
  11. signals:
  12. void onNewData();
  13. };
To copy to clipboard, switch view to plain text mode 

base class cpp file
Qt Code:
  1. #include "ui-base.h"
  2. #include <QDebug>
  3. #include <QMetaType>
  4.  
  5. UIBase::UIBase()
  6. : QObject()
  7. {
  8. }
  9.  
  10. void UIBase::onData(const std::string &typeID)
  11. {
  12. emit onNewData();
  13. }
To copy to clipboard, switch view to plain text mode 

Receiver class header
Qt Code:
  1. class Receiver : public UIBase
  2. {
  3. Q_OBJECT
  4. public:
  5. Receiver();
  6.  
  7. public slots:
  8. void onReceiveData();
  9. };
To copy to clipboard, switch view to plain text mode 

Receiver class cpp
Qt Code:
  1. Receiver::Receiver()
  2. {
  3. if (connect(this, SIGNAL(onNewData()), this, SLOT(onReceiveData())))
  4. qDebug() << "SIGNAL/SLOT CONNECTION SUCCESS!";
  5. else
  6. qDebug() << "SIGNAL/SLOT FAILED!";
  7. }
  8.  
  9. void Receiver::onReceiveData()
  10. {
  11. qDebug() << "SLOT CALLED";
  12. }
To copy to clipboard, switch view to plain text mode 


Any and all help/suggestions will be greatly appreciated