I'm working on my multi-threaded project and got this error on build. I did not require any initialization with my threads and I just made an instance of the thread in the private section of my QMainWindow.
error: field 'capturingThread' has incomplete type
error: field 'computingThread' has incomplete type

The following code is my main window and the error points to the private section here.
Qt Code:
  1. #ifndef GENIUS_H
  2. #define GENIUS_H
  3.  
  4. #include <QMainWindow>
  5. #include "ui_genius.h"
  6.  
  7. class CapturingThread;
  8. class ComputingThread;
  9.  
  10. class GeniusMain : public QMainWindow, private Ui::genius
  11. {
  12. Q_OBJECT
  13.  
  14. public:
  15. GeniusMain(QMainWindow *parent);
  16.  
  17. protected:
  18. void closeEvent (QCloseEvent *event);
  19.  
  20. private slots:
  21. void standbyThreads();
  22. void startTransmission();
  23. void haltThreads();
  24. void printFPS();
  25. void printDistance();
  26. void printTeam();
  27. void printOpp();
  28.  
  29. private:
  30. CapturingThread capturingThread;
  31. ComputingThread computingThread;
  32. };
  33.  
  34. #endif
To copy to clipboard, switch view to plain text mode 

Here are the header files for my threads capturingThread and computingThread.
Qt Code:
  1. #ifndef CAPTURINGTHREAD_H
  2. #define CAPTURINGTHREAD_H
  3.  
  4. #include <QThread>
  5.  
  6. class ImageBuffer;
  7.  
  8. class CapturingThread : public QThread
  9. {
  10. public:
  11. CapturingThread();
  12. ~CapturingThread();
  13.  
  14. void haltCapture();
  15.  
  16. protected:
  17. void run();
  18.  
  19. private:
  20. volatile bool halt;
  21. ImageBuffer* imageBuffer;
  22. };
  23.  
  24. #endif
To copy to clipboard, switch view to plain text mode 

Qt Code:
  1. #ifndef COMPUTINGTHREAD_H
  2. #define COMPUTINGTHREAD_H
  3.  
  4. #include <QThread>
  5.  
  6. class ImageBuffer;
  7.  
  8. class ComputingThread : public QThread
  9. {
  10. public:
  11. ComputingThread();
  12. ~ComputingThread();
  13.  
  14. void haltComputing();
  15. void startTransmitting();
  16. void stopTransmitting();
  17.  
  18. protected:
  19. void run();
  20.  
  21. private:
  22. volatile bool halt;
  23. volatile bool transmit;
  24. ImageBuffer* imageBuffer;
  25. };
  26.  
  27. #endif
To copy to clipboard, switch view to plain text mode 

What could be the source of the build error?