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

Method ReadVariables

IO/EnSight/core/EnSightDataSet.cxx:1508–1606  ·  view source on GitHub ↗

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

Source from the content-addressed store, hash-verified

1506
1507//------------------------------------------------------------------------------
1508bool EnSightDataSet::ReadVariables(vtkPartitionedDataSetCollection* output,
1509 vtkDataArraySelection* partSelection, vtkDataArraySelection* pointArraySelection,
1510 vtkDataArraySelection* cellArraySelection, vtkDataArraySelection* fieldArraySelection)
1511{
1512 for (auto& var : this->Variables)
1513 {
1514 switch (var.Type)
1515 {
1516 case VariableType::ScalarPerNode:
1517 case VariableType::VectorPerNode:
1518 case VariableType::TensorSymmPerNode:
1519 case VariableType::TensorAsymPerNode:
1520 if (pointArraySelection->ArrayIsEnabled(var.Name.c_str()))
1521 {
1522 this->ReadVariableNodes(
1523 var.File, var.Name, getNumComponents(var.Type), output, partSelection);
1524 }
1525 break;
1526
1527 case VariableType::ScalarPerMeasuredNode:
1528 case VariableType::VectorPerMeasuredNode:
1529 if (pointArraySelection->ArrayIsEnabled(var.Name.c_str()))
1530 {
1531 this->ReadVariableMeasuredNodes(
1532 var.File, var.Name, getNumComponents(var.Type), output, partSelection);
1533 }
1534 break;
1535
1536 case VariableType::ComplexScalarPerNode:
1537 if (pointArraySelection->ArrayIsEnabled(var.Name.c_str()))
1538 {
1539 this->ReadVariableNodes(
1540 var.File, var.Name, getNumComponents(var.Type), output, partSelection, true, true);
1541 this->ReadVariableNodes(var.ImaginaryFile, var.Name, getNumComponents(var.Type), output,
1542 partSelection, true, false);
1543 }
1544 break;
1545
1546 case VariableType::ComplexVectorPerNode:
1547 if (pointArraySelection->ArrayIsEnabled(var.Name.c_str()))
1548 {
1549 this->ReadVariableNodes(
1550 var.File, var.Name + "_r", getNumComponents(var.Type), output, partSelection);
1551 this->ReadVariableNodes(
1552 var.ImaginaryFile, var.Name + "_i", getNumComponents(var.Type), output, partSelection);
1553 }
1554 break;
1555
1556 case VariableType::ScalarPerElement:
1557 case VariableType::VectorPerElement:
1558 case VariableType::TensorSymmPerElement:
1559 case VariableType::TensorAsymPerElement:
1560 if (cellArraySelection->ArrayIsEnabled(var.Name.c_str()))
1561 {
1562 this->ReadVariableElements(
1563 var.File, var.Name, getNumComponents(var.Type), output, partSelection);
1564 }
1565 break;

Callers 1

RequestDataMethod · 0.80

Calls 7

ReadVariableNodesMethod · 0.95
ReadVariableElementsMethod · 0.95
getNumComponentsFunction · 0.85
ArrayIsEnabledMethod · 0.45
c_strMethod · 0.45

Tested by

no test coverage detected