MCPcopy Create free account
hub / github.com/Kitware/VTK / ComputeAMRBlocksToLoad

Method ComputeAMRBlocksToLoad

Filters/AMR/vtkAMRResampleFilter.cxx:856–890  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

854
855//------------------------------------------------------------------------------
856void vtkAMRResampleFilter::ComputeAMRBlocksToLoad(vtkOverlappingAMR* metadata)
857{
858 assert("pre: metadata is nullptr" && (metadata != nullptr));
859
860 this->BlocksToLoad.clear();
861
862 unsigned int maxLevelToLoad = 0;
863 if (this->LevelOfResolution < static_cast<int>(metadata->GetNumberOfLevels()))
864 {
865 maxLevelToLoad = this->LevelOfResolution + 1;
866 }
867 else
868 {
869 maxLevelToLoad = metadata->GetNumberOfLevels();
870 }
871
872 unsigned int level = 0;
873 for (; level < maxLevelToLoad; ++level)
874 {
875 unsigned int dataIdx = 0;
876 for (; dataIdx < metadata->GetNumberOfBlocks(level); ++dataIdx)
877 {
878 double grd[6];
879 metadata->GetBounds(level, dataIdx, grd);
880 if (this->IsBlockWithinBounds(grd))
881 {
882 this->BlocksToLoad.push_back(metadata->GetAbsoluteBlockIndex(level, dataIdx));
883 } // END check if the block is within the bounds of the ROI
884 } // END for all data
885 } // END for all levels
886
887 std::sort(this->BlocksToLoad.begin(), this->BlocksToLoad.end());
888 std::cerr << "Number Levels Loaded = " << maxLevelToLoad
889 << " Number of Blocks = " << BlocksToLoad.size() << "\n";
890}
891
892//------------------------------------------------------------------------------
893void vtkAMRResampleFilter::GetDomainParameters(vtkOverlappingAMR* amr, double domainMin[3],

Callers 1

RequestInformationMethod · 0.95

Calls 12

IsBlockWithinBoundsMethod · 0.95
assertFunction · 0.50
sortFunction · 0.50
clearMethod · 0.45
GetNumberOfLevelsMethod · 0.45
GetNumberOfBlocksMethod · 0.45
GetBoundsMethod · 0.45
push_backMethod · 0.45
GetAbsoluteBlockIndexMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected