| 1077 | } |
| 1078 | |
| 1079 | void |
| 1080 | TrackerNodeInteract::refreshSelectedMarkerTexture() |
| 1081 | { |
| 1082 | assert( QThread::currentThread() == qApp->thread() ); |
| 1083 | if (isTracking) { |
| 1084 | return; |
| 1085 | } |
| 1086 | TrackMarkerPtr marker = selectedMarker.lock(); |
| 1087 | if (!marker) { |
| 1088 | return; |
| 1089 | } |
| 1090 | |
| 1091 | int time = _p->publicInterface->getCurrentTime(); |
| 1092 | RectI roi = marker->getMarkerImageRoI(time); |
| 1093 | if ( roi.isNull() ) { |
| 1094 | return; |
| 1095 | } |
| 1096 | ImagePtr existingMarkerImg = selectedMarkerImg.lock(); |
| 1097 | if ( existingMarkerImg && (existingMarkerImg->getTime() == time) && (roi == selectedMarkerTextureRoI) ) { |
| 1098 | return; |
| 1099 | } |
| 1100 | |
| 1101 | selectedMarkerImg.reset(); |
| 1102 | |
| 1103 | imageGetterWatcher = std::make_shared<TrackWatcher>(); |
| 1104 | QObject::connect( imageGetterWatcher.get(), SIGNAL(finished()), this, SLOT(onTrackImageRenderingFinished()) ); |
| 1105 | imageGetterWatcher->setFuture( QtConcurrent::run(marker.get(), &TrackMarker::getMarkerImage, time, roi) ); |
| 1106 | } |
| 1107 | |
| 1108 | void |
| 1109 | TrackerNodeInteract::makeMarkerKeyTexture(int time, |
no test coverage detected