VTK/VTK 6 Migration/Removal of ShouldIReleaseData: Difference between revisions
(Created page with "= Removal of ShouldIReleaseData() and ReleaseDataFlag methods from vtkDataObject = VTK 6 introduces a number of backwards-incompatible changes. The reasons behind these changes ...") |
|||
Line 1: | Line 1: | ||
= Removal of ShouldIReleaseData() and ReleaseDataFlag methods from vtkDataObject = | = Removal of ShouldIReleaseData() and ReleaseDataFlag methods from vtkDataObject = | ||
VTK 6 introduces a number of backwards-incompatible changes. The reasons behind these changes are described in more detail [here]. One of these changes is the removal of all pipeline related methods from vtkDataObject. Among these are the following vtkDataObject methods: | VTK 6 introduces a number of backwards-incompatible changes. The reasons behind these changes are described in more detail [[VTK/VTK 6 Migration/Overview|here]]. One of these changes is the removal of all pipeline related methods from vtkDataObject. Among these are the following vtkDataObject methods: | ||
* ShouldIReleaseData() | * ShouldIReleaseData() |
Latest revision as of 19:25, 6 April 2012
Removal of ShouldIReleaseData() and ReleaseDataFlag methods from vtkDataObject
VTK 6 introduces a number of backwards-incompatible changes. The reasons behind these changes are described in more detail here. One of these changes is the removal of all pipeline related methods from vtkDataObject. Among these are the following vtkDataObject methods:
- ShouldIReleaseData()
- SetReleaseDataFlag()
- GetReleaseDataFlag()
- ReleaseDataFlagToOn()
- ReleaseDataFlagToOff()
All of these methods (except ShouldIReleaseData) have always had their counterparts in vtkDemandDrivenPipeline and any code that uses them can be fixed by using the vtkDemandDrivenPipeline methods instead. ShouldIReleaseData is a convenience method that was used by pipeline executives and is not normally used outside this context.
Example 1
Replace
<source lang="cpp"> vtkDataObject* dobj = anAlgorithm->GetOutput(); dobj->SetReleaseDataFlag(1); </source>
with
<source lang="cpp"> vtkDemandDrivenPipeline* executive =
vtkDemandDrivenPipeline::SafeDownCast( anAlgorithm->GetExecutive());
if (executive)
{ executive->SetReleaseDataFlag(0, 1); // where 0 is the port index }
</source>