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

Method DeserializeMetaData

Parallel/Core/vtkFieldDataSerializer.cxx:65–104  ·  view source on GitHub ↗

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

Source from the content-addressed store, hash-verified

63
64//------------------------------------------------------------------------------
65void vtkFieldDataSerializer::DeserializeMetaData(vtkMultiProcessStream& bytestream,
66 vtkStringArray* names, vtkIntArray* datatypes, vtkIntArray* dimensions)
67{
68 if (bytestream.Empty())
69 {
70 vtkGenericWarningMacro("ByteStream is empty");
71 return;
72 }
73
74 if ((names == nullptr) || (datatypes == nullptr) || (dimensions == nullptr))
75 {
76 vtkGenericWarningMacro("ERROR: caller must pre-allocation names/datatypes/dimensions!");
77 return;
78 }
79
80 // STEP 0: Extract the number of arrays
81 int NumberOfArrays;
82 bytestream >> NumberOfArrays;
83 if (NumberOfArrays == 0)
84 {
85 return;
86 }
87
88 // STEP 1: Allocate output data-structures
89 names->SetNumberOfValues(NumberOfArrays);
90 datatypes->SetNumberOfValues(NumberOfArrays);
91 dimensions->SetNumberOfComponents(2);
92 dimensions->SetNumberOfTuples(NumberOfArrays);
93
94 std::string* namesPtr = names->GetPointer(0);
95 int* datatypesPtr = datatypes->GetPointer(0);
96 int* dimensionsPtr = dimensions->GetPointer(0);
97
98 // STEP 2: Extract metadata for each array in corresponding output arrays
99 for (int arrayIdx = 0; arrayIdx < NumberOfArrays; ++arrayIdx)
100 {
101 bytestream >> datatypesPtr[arrayIdx] >> dimensionsPtr[arrayIdx * 2] >>
102 dimensionsPtr[arrayIdx * 2 + 1] >> namesPtr[arrayIdx];
103 } // END for all arrays
104}
105
106//------------------------------------------------------------------------------
107void vtkFieldDataSerializer::Serialize(vtkFieldData* fieldData, vtkMultiProcessStream& bytestream)

Callers

nothing calls this directly

Calls 5

EmptyMethod · 0.45
SetNumberOfValuesMethod · 0.45
SetNumberOfComponentsMethod · 0.45
SetNumberOfTuplesMethod · 0.45
GetPointerMethod · 0.45

Tested by

no test coverage detected