Суть такая, есть объект, который пришел сюда по ссылке, у него вызывается метод Move
class StreamFly : public QRunnable
{
private:
FlyObj * flyObjVector; // Вот он в классе
ModuleRls * RLS;
QMutex * mutex;
protected:
void run();
public:
StreamFly(FlyObj&, ModuleRls&, QMutex&);
};
StreamFly::StreamFly(FlyObj &init_ObjList, ModuleRls &init_RLS, QMutex &init_Mutex)
{
flyObjVector = &init_ObjList; // Вот он пришел объект
RLS = &init_RLS;
mutex = &init_Mutex;
}
void StreamFly::run()
{
if (flyObjVector->state.v > 0)
{
mutex->lock();
RLS->Peleng(flyObjVector->typeObj, flyObjVector->objID, flyObjVector->state.x, flyObjVector->state.y);
mutex->unlock();
flyObjVector->Move(); // Вот этот метод
}
}
Мы заходим в этот метод и здесь есть метод другого класса
FilterKalmana filterData; // Объект другого класса в который нужно отправить this
void FlyObj::Move()
{
filterData.approximationFK(this);
}
А вот сам класс принимающий объект класса
#include "FlyObj.h"
class FilterKalmana
{
private:
double sigmaPsi = 5.0;
double sigmaEta = 40.0;
/* ------------------- Function ------------------- */
void CorrectX(FlyObj &ObjFilter)
{
//...
}
void CorrectY(FlyObj &ObjFilter)
{
//...
}
public:
void approximationFK(FlyObj &ObjFilter){
CorrectX(ObjFilter);
CorrectY(ObjFilter);
};
};
И я не понимаю как заставить его работать, выскакивает кучу ошибок
Помогите пожалуйста, что не так??