Implements Impala::Visualization::AppControlSrc. Definition at line 456 of file mainDemoCamera2d.cpp. References Impala::Core::Array::ArrayListDelete(), Impala::Core::Array::ArraySystem::CheckMemoryUsageSinceMark(), Impala::Core::Array::ColorSpace(), Impala::Application::DemoCamera2d::curInvList, Impala::Core::Stream::RgbDataSrc::DataPtr(), DisplayIm(), Impala::Application::DemoCamera2d::eList, Impala::Application::DemoCamera2d::funcRes, Impala::Visualization::AppControlSrc::GetSrc(), Impala::Core::Array::ArraySystem::Instance(), Impala::Core::Array::InvCompDer(), Impala::Application::DemoCamera2d::lList, Impala::Core::Array::ArraySystem::MarkMemoryUsage(), mCurView, mViewScale, Impala::Core::Array::Element::OOO, Impala::Application::DemoCamera2d::precision, Impala::Core::Array::Element::RGB, Impala::Core::Array::RGB2Intensity(), Impala::Application::DemoCamera2d::rgbList, Impala::Application::DemoCamera2d::sigma, Impala::Application::DemoCamera2d::srcV, and Impala::Application::DemoCamera2d::verbose. 00457 { 00458 UpdateView(0, GetSrc()->DataPtr(), GetSrc()->FrameWidth(), 00459 GetSrc()->FrameHeight(), mViewScale); 00460 00461 ArraySystem& aSys = ArraySystem::Instance(); 00462 aSys.MarkMemoryUsage(verbose > 0); 00463 00464 MakeFromData2<Array2dVec3Real64,Array2dVec3UInt8>(srcV, GetSrc()->DataPtr()); 00465 00466 bool oneReqL = false; 00467 bool oneReqE = false; 00468 bool oneReqRGB = false; 00469 int i; 00470 for (i=0 ; i<curInvList.size() ; i++) 00471 { 00472 if (curInvList[i].mReqL) 00473 oneReqL = true; 00474 if (curInvList[i].mReqE) 00475 oneReqE = true; 00476 if (curInvList[i].mReqRGB) 00477 oneReqRGB = true; 00478 } 00479 if (oneReqL) 00480 { 00481 Array2dScalarReal64* l = 0; 00482 RGB2Intensity(l, srcV); 00483 lList = InvCompDer(l, sigma, precision, false); 00484 delete l; 00485 } 00486 if (oneReqE) 00487 { 00488 Array2dVec3Real64* ooo = 0; 00489 ColorSpace(ooo, srcV, Element::RGB, Element::OOO); 00490 eList = InvCompDer(ooo, sigma, precision, false); 00491 delete ooo; 00492 } 00493 if (oneReqRGB) 00494 rgbList = InvCompDer(srcV, sigma, precision, false); 00495 mCurView = 1; 00496 for (i=0 ; i<curInvList.size() ; i++) 00497 { 00498 InvInfo cI = curInvList[i]; 00499 if (cI.mFunc) 00500 cI.mFunc(); 00501 if (verbose == 1) 00502 std::cout << "Displaying " << i << " = " << cI.mName << std::endl; 00503 if (cI.mFunc) 00504 { 00505 DisplayIm(funcRes, cI.mDisplayMode, cI.mName); 00506 delete funcRes; 00507 } 00508 else 00509 { 00510 if (cI.mReqL) 00511 DisplayIm(lList[cI.mImIdx], cI.mDisplayMode, cI.mName); 00512 if (cI.mReqE) 00513 DisplayIm(eList[cI.mImIdx], cI.mDisplayMode, cI.mName); 00514 if (cI.mReqRGB) 00515 DisplayIm(rgbList[cI.mImIdx], cI.mDisplayMode, cI.mName); 00516 } 00517 } 00518 ArrayListDelete(&lList); 00519 ArrayListDelete(&eList); 00520 ArrayListDelete(&rgbList); 00521 00522 aSys.CheckMemoryUsageSinceMark(verbose > 0); 00523 }
Here is the call graph for this function:
|