| 93 | vtkGenericDataObjectReader::~vtkGenericDataObjectReader() = default; |
| 94 | |
| 95 | vtkDataObject* vtkGenericDataObjectReader::CreateOutput(vtkDataObject* currentOutput) |
| 96 | { |
| 97 | if (this->GetFileName() == nullptr && |
| 98 | (this->GetReadFromInputString() == 0 || |
| 99 | (this->GetInputArray() == nullptr && this->GetInputString() == nullptr))) |
| 100 | { |
| 101 | vtkWarningMacro(<< "FileName must be set"); |
| 102 | return nullptr; |
| 103 | } |
| 104 | |
| 105 | int outputType = this->ReadOutputType(); |
| 106 | |
| 107 | if (currentOutput && (currentOutput->GetDataObjectType() == outputType)) |
| 108 | { |
| 109 | return currentOutput; |
| 110 | } |
| 111 | |
| 112 | vtkDataObject* output = nullptr; |
| 113 | switch (outputType) |
| 114 | { |
| 115 | case VTK_DIRECTED_GRAPH: |
| 116 | output = vtkDirectedGraph::New(); |
| 117 | break; |
| 118 | case VTK_MOLECULE: |
| 119 | case VTK_UNDIRECTED_GRAPH: |
| 120 | output = vtkUndirectedGraph::New(); |
| 121 | break; |
| 122 | case VTK_IMAGE_DATA: |
| 123 | output = vtkImageData::New(); |
| 124 | break; |
| 125 | case VTK_POLY_DATA: |
| 126 | output = vtkPolyData::New(); |
| 127 | break; |
| 128 | case VTK_RECTILINEAR_GRID: |
| 129 | output = vtkRectilinearGrid::New(); |
| 130 | break; |
| 131 | case VTK_STATISTICAL_MODEL: |
| 132 | output = vtkStatisticalModel::New(); |
| 133 | break; |
| 134 | case VTK_STRUCTURED_GRID: |
| 135 | output = vtkStructuredGrid::New(); |
| 136 | break; |
| 137 | case VTK_STRUCTURED_POINTS: |
| 138 | output = vtkStructuredPoints::New(); |
| 139 | break; |
| 140 | case VTK_TABLE: |
| 141 | output = vtkTable::New(); |
| 142 | break; |
| 143 | case VTK_TREE: |
| 144 | output = vtkTree::New(); |
| 145 | break; |
| 146 | case VTK_UNSTRUCTURED_GRID: |
| 147 | output = vtkUnstructuredGrid::New(); |
| 148 | break; |
| 149 | case VTK_MULTIBLOCK_DATA_SET: |
| 150 | output = vtkMultiBlockDataSet::New(); |
| 151 | break; |
| 152 | case VTK_MULTIPIECE_DATA_SET: |
nothing calls this directly
no test coverage detected