| 1332 | } |
| 1333 | |
| 1334 | void |
| 1335 | TrackerNodeInteract::onTrackImageRenderingFinished() |
| 1336 | { |
| 1337 | assert( QThread::currentThread() == qApp->thread() ); |
| 1338 | QFutureWatcher<std::pair<ImagePtr, RectI> >* future = dynamic_cast<QFutureWatcher<std::pair<ImagePtr, RectI> >*>( sender() ); |
| 1339 | assert(future); |
| 1340 | std::pair<ImagePtr, RectI> ret = future->result(); |
| 1341 | OverlaySupport* overlay = _p->publicInterface->getCurrentViewportForOverlays(); |
| 1342 | assert(overlay); |
| 1343 | OpenGLViewerI* isOpenGLViewer = dynamic_cast<OpenGLViewerI*>(overlay); |
| 1344 | assert(isOpenGLViewer); |
| 1345 | if (!isOpenGLViewer) { |
| 1346 | return; |
| 1347 | } |
| 1348 | if (!ret.first) { |
| 1349 | return; |
| 1350 | } |
| 1351 | isOpenGLViewer->makeOpenGLcontextCurrent(); |
| 1352 | |
| 1353 | showMarkerTexture = true; |
| 1354 | if (!selectedMarkerTexture) { |
| 1355 | int format, internalFormat, glType; |
| 1356 | Texture::getRecommendedTexParametersForRGBAByteTexture(&format, &internalFormat, &glType); |
| 1357 | selectedMarkerTexture = std::make_shared<Texture>(GL_TEXTURE_2D, GL_LINEAR, GL_NEAREST, GL_CLAMP_TO_EDGE, Texture::eDataTypeByte, |
| 1358 | format, internalFormat, glType); |
| 1359 | } |
| 1360 | selectedMarkerTextureTime = (int)ret.first->getTime(); |
| 1361 | selectedMarkerTextureRoI = ret.second; |
| 1362 | |
| 1363 | convertImageTosRGBOpenGLTexture(ret.first, selectedMarkerTexture, ret.second); |
| 1364 | |
| 1365 | _p->publicInterface->redrawOverlayInteract(); |
| 1366 | } |
| 1367 | |
| 1368 | void |
| 1369 | TrackerNodeInteract::onKeyFrameImageRenderingFinished() |
nothing calls this directly
no test coverage detected