Definition at line 446 of file TableWindow.h. References Impala::Application::VideoExcel::TableDataSource::GetID(), Impala::Application::VideoExcel::TableDataSource::GetSortedVideoData(), Impala::Application::VideoExcel::TableViewCache::GetViewFromCache(), ILOG_DEBUG, mShowZoomView, mSource, mZoomImage, mZoomView, mZoomViewCache, mZoomViewRow, mZoomViewVideoEnabled, and Impala::Visualization::RgbOglImage::OglImage(). Referenced by UpdateZoomView(). 00447 { 00448 if (!mZoomViewCache || !mShowZoomView || mZoomViewRow == row) 00449 return; 00450 00451 mZoomViewRow = row; 00452 // mode 1: show video, if available 00453 Array2dVec3UInt8 *frame = mSource->GetSortedVideoData("", row); 00454 if (frame) 00455 { 00456 ILOG_DEBUG("SetZoomView: showing video preview for row " << row); 00457 mZoomViewVideoEnabled = true; 00458 if (!mZoomImage) 00459 mZoomImage = Visualization::RgbOglImage::OglImage(frame); 00460 else 00461 { 00462 if (mZoomImage->imageHandle) 00463 delete mZoomImage->imageHandle; 00464 mZoomImage->imageHandle = frame; 00465 mZoomImage->w = frame->CW(); 00466 mZoomImage->h = frame->CH(); 00467 } 00468 viewSys.SetImage(mZoomView, mZoomImage); 00469 return; 00470 } 00471 00472 // mode 2: use active image cache: 00473 mZoomViewVideoEnabled = false; 00474 OGLVIEW* v = mZoomViewCache->GetViewFromCache(mSource->GetID(row)); 00475 if (!v || v->UserData2 == (void*)2) // image not currently in cache? 00476 return; 00477 OGLIMAGE* im = v->im; 00478 viewSys.SetImage(mZoomView, im); 00479 }
Here is the call graph for this function:
|