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

Method GetAMRPointData

IO/AMR/vtkAMRBaseReader.cxx:341–377  ·  view source on GitHub ↗

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

Source from the content-addressed store, hash-verified

339
340//------------------------------------------------------------------------------
341void vtkAMRBaseReader::GetAMRPointData(int blockIdx, vtkUniformGrid* block, const char* fieldName)
342{
343 assert("pre: AMR block is nullptr" && (block != nullptr));
344 assert("pre: field name is nullptr" && (fieldName != nullptr));
345
346 // If caching is disabled load the data from file
347 if (!this->IsCachingEnabled())
348 {
349 vtkTimerLog::MarkStartEvent("GetAMRGridPointDataFromFile");
350 this->GetAMRGridPointData(blockIdx, block, fieldName);
351 vtkTimerLog::MarkEndEvent("GetAMRGridPointDataFromFile");
352 return;
353 }
354
355 // Caching is enabled.
356 // Check the cache to see if the data has already been read.
357 // Otherwise, read it and cache it.
358 if (this->Cache->HasAMRBlockPointData(blockIdx, fieldName))
359 {
360 vtkTimerLog::MarkStartEvent("GetAMRGridPointDataFromCache");
361 vtkDataArray* data = this->Cache->GetAMRBlockPointData(blockIdx, fieldName);
362 assert("pre: cached data is nullptr!" && (data != nullptr));
363 vtkTimerLog::MarkEndEvent("GetAMRGridPointDataFromCache");
364
365 block->GetPointData()->AddArray(data);
366 }
367 else
368 {
369 vtkTimerLog::MarkStartEvent("GetAMRGridPointDataFromFile");
370 this->GetAMRGridPointData(blockIdx, block, fieldName);
371 vtkTimerLog::MarkEndEvent("GetAMRGridPointDataFromFile");
372
373 vtkTimerLog::MarkStartEvent("CacheAMRPointData");
374 this->Cache->InsertAMRBlockPointData(blockIdx, block->GetPointData()->GetArray(fieldName));
375 vtkTimerLog::MarkEndEvent("CacheAMRPointData");
376 }
377}
378
379//------------------------------------------------------------------------------
380vtkUniformGrid* vtkAMRBaseReader::GetAMRBlock(int blockIdx)

Callers 1

LoadPointDataMethod · 0.95

Calls 8

GetAMRGridPointDataMethod · 0.80
HasAMRBlockPointDataMethod · 0.80
GetAMRBlockPointDataMethod · 0.80
assertFunction · 0.50
AddArrayMethod · 0.45
GetPointDataMethod · 0.45
GetArrayMethod · 0.45

Tested by

no test coverage detected