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

Method PieceToExtentThreadSafe

Common/ExecutionModel/vtkExtentTranslator.cxx:80–119  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

78}
79
80int vtkExtentTranslator::PieceToExtentThreadSafe(int piece, int numPieces, int ghostLevel,
81 int* wholeExtent, int* resultExtent, int splitMode, int byPoints)
82{
83 memcpy(resultExtent, wholeExtent, sizeof(int) * 6);
84 int ret;
85 if (byPoints)
86 {
87 ret = this->SplitExtentByPoints(piece, numPieces, resultExtent, splitMode);
88 }
89 else
90 {
91 ret = this->SplitExtent(piece, numPieces, resultExtent, splitMode);
92 }
93
94 if (ret == 0)
95 {
96 // Nothing in this piece.
97 resultExtent[0] = resultExtent[2] = resultExtent[4] = 0;
98 resultExtent[1] = resultExtent[3] = resultExtent[5] = -1;
99 return 0;
100 }
101 if (ghostLevel > 0)
102 {
103 resultExtent[0] -= ghostLevel;
104 resultExtent[1] += ghostLevel;
105 resultExtent[2] -= ghostLevel;
106 resultExtent[3] += ghostLevel;
107 resultExtent[4] -= ghostLevel;
108 resultExtent[5] += ghostLevel;
109
110 resultExtent[0] = std::max(resultExtent[0], wholeExtent[0]);
111 resultExtent[1] = std::min(resultExtent[1], wholeExtent[1]);
112 resultExtent[2] = std::max(resultExtent[2], wholeExtent[2]);
113 resultExtent[3] = std::min(resultExtent[3], wholeExtent[3]);
114 resultExtent[4] = std::max(resultExtent[4], wholeExtent[4]);
115 resultExtent[5] = std::min(resultExtent[5], wholeExtent[5]);
116 }
117
118 return 1;
119}
120
121//------------------------------------------------------------------------------
122int vtkExtentTranslator::SplitExtent(int piece, int numPieces, int* ext, int splitMode)

Callers 8

PieceToExtentMethod · 0.95
PieceToExtentByPointsMethod · 0.95
ExecuteDataStartMethod · 0.80
ExecuteDataEndMethod · 0.80
RequestDataMethod · 0.80
RootExecuteMethod · 0.80
RequestDataMethod · 0.80
operator()Method · 0.80

Calls 4

SplitExtentByPointsMethod · 0.95
SplitExtentMethod · 0.95
maxFunction · 0.50
minFunction · 0.50

Tested by 1

operator()Method · 0.64