ros — поток LCM.subsrcibe и C ++. Я использую поток C ++, но мой lcm.subsrcibe не работает

Этот код состоит из LCM и SDK камеры Zed. Я хочу получать сообщения ZED и lcm. Поэтому я использую 3 потока и LCM подписки.

Но пустота «CallbackRTK» не работает.

основной код

Вот:

int main(int argc,char **argv){
Camera zed;
InitParameters init_params;
init_params.camera_resolution = RESOLUTION_HD1080;
init_params.depth_mode = DEPTH_MODE_PERFORMANCE;
init_params.coordinate_units = UNIT_METER;
if (argc > 1) init_params.svo_input_filename.set(argv[1]);

ERROR_CODE err = zed.open(init_params);
if (err != SUCCESS) {
printf("%s\n", toString(err).c_str());
zed.close();
return 1; // Quit if an error occurred
}

//LCM
lcm::LCM lcm;
if (!lcm.good())
return 1;
Handler handlerObject;
lcm.subscribe("InsData",&Handler::Callback_RTK,&handlerObject);

//RTK Data
//ofstream fout2;
//fout2.open("/home/peng/opencv-test/RTK.txt",ios::out|ios::app);thread t1 (savepic,ref(zed));
thread t2 (saveIMU,ref(zed));
thread t3 (saveRTK);
//thread t4 (lcm.subscribe,ref("InsData"),ref(Handler::Callback_RTK),ref(handlerObject));

//t4.join();
t3.join();
t2.join();
t1.join();
while(0==lcm.handle());
return 0;
}The thread t3,t2,t1 work but the "&Handler::Callback_RTK" which in LCM.subsrcibe does't work.Can any body explain why?
I have try write the LCM::subsricbe in a thread.But it can't compile the program.

-3

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]