ENH: Three sweeping changes.
1.) vtkTypeRevisionMacro is now used in all VTK classes in place of vtkTypeMacro. It invokes the original vtkTypeMacro and then adds a protected CollectRevisions method for future use in serialization. A corresponding vtkCxxRevisionMacro has been added to every .cxx file to implement the CollectRevisions method for each class. This will allow collection of every class revision at run time. Any new VTK class should use vtkTypeRevisionMacro instead of vtkTypeMacro. The .cxx implementation should then have the following line: vtkCxxRevisionMacro(vtkFoo, "$Revision: 1.1 $"); CVS should insert the correct revision number when the class is commited. 2.) vtkTypeMacro now also adds a typedef called "Superclass" to refer to the superclass of any VTK class. All PrintSelf methods have been updated to call their superclass's PrintSelf like this: this->Superclass::PrintSelf(os,indent); This should reduce the number of places that refer to a superclass by its actual name. 3.) The standard ::New() method implementation has been replaced with a macro. Instead of an explicitly written implementation to try the object factory and then call the new operator, VTK classes should instead use the following macro unless they have a special New() method: vtkStandardNewMacro(vtkFoo); This will implement the New() method in the standard way. The line should appear in the .cxx implementation file, not in the header. Using the macro will make it easier to change the standard implementation of the method. Also removed tabs from many files.
Showing with 3320 additions and 8467 deletions
Too many changes to show.
To preserve performance only 1000 of 1000+ files are displayed.