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

Method Process

Filters/Hybrid/vtkTemporalArrayOperatorFilter.cxx:260–300  ·  view source on GitHub ↗

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

Source from the content-addressed store, hash-verified

258
259//------------------------------------------------------------------------------
260vtkDataObject* vtkTemporalArrayOperatorFilter::Process(
261 vtkDataObject* inputData0, vtkDataObject* inputData1)
262{
263 if (inputData0->IsA("vtkCompositeDataSet"))
264 {
265 // We suppose input data are same type and have same structure (they should!)
266 vtkCompositeDataSet* compositeDataSet0 = vtkCompositeDataSet::SafeDownCast(inputData0);
267 vtkCompositeDataSet* compositeDataSet1 = vtkCompositeDataSet::SafeDownCast(inputData1);
268
269 vtkCompositeDataSet* outputCompositeDataSet = compositeDataSet0->NewInstance();
270 outputCompositeDataSet->CompositeShallowCopy(compositeDataSet0);
271
272 vtkSmartPointer<vtkCompositeDataIterator> iter;
273 iter.TakeReference(compositeDataSet0->NewIterator());
274 for (iter->InitTraversal(); !iter->IsDoneWithTraversal(); iter->GoToNextItem())
275 {
276 if (this->CheckAbort())
277 {
278 break;
279 }
280 vtkDataObject* dataObj0 = iter->GetCurrentDataObject();
281 vtkDataObject* dataObj1 = compositeDataSet1->GetDataSet(iter);
282 if (!dataObj0 || !dataObj1)
283 {
284 vtkWarningMacro("The composite datasets have different structure.");
285 continue;
286 }
287
288 vtkSmartPointer<vtkDataObject> resultDataObj;
289 resultDataObj.TakeReference(this->ProcessDataObject(dataObj0, dataObj1));
290 if (!resultDataObj)
291 {
292 return nullptr;
293 }
294 outputCompositeDataSet->SetDataSet(iter, resultDataObj);
295 }
296 return outputCompositeDataSet;
297 }
298
299 return this->ProcessDataObject(inputData0, inputData1);
300}
301
302//------------------------------------------------------------------------------
303vtkDataObject* vtkTemporalArrayOperatorFilter::ProcessDataObject(

Callers 1

ExecuteMethod · 0.95

Calls 13

ProcessDataObjectMethod · 0.95
IsAMethod · 0.80
CheckAbortMethod · 0.80
NewInstanceMethod · 0.45
CompositeShallowCopyMethod · 0.45
TakeReferenceMethod · 0.45
NewIteratorMethod · 0.45
InitTraversalMethod · 0.45
IsDoneWithTraversalMethod · 0.45
GoToNextItemMethod · 0.45
GetCurrentDataObjectMethod · 0.45
GetDataSetMethod · 0.45

Tested by

no test coverage detected