1. 12 Sep, 2016 1 commit
    • David Gobbi's avatar
      Add extern template decls for vtkArrayIterator · e7b9d312
      David Gobbi authored
      The template instantiations were moved out of the array classes and into
      their own source file, rather than adding the extern template declarations
      into the header file of each array class.  This was done to avoid repeating
      the same code block across many header files.
      e7b9d312
  2. 08 Mar, 2016 1 commit
  3. 03 Mar, 2016 3 commits
  4. 18 Dec, 2014 1 commit
  5. 19 Sep, 2013 1 commit
    • David C. Lonie's avatar
      Remove constructor argument from array classes. · a8247f0a
      David C. Lonie authored
      This is not used anymore, and is causing issues with
      vtkTypeTemplate.
      
      Also cleaned up some constructors to avoid re-initializing
      members from base classes and ensure that all members are
      initialized.
      
      Change-Id: I103365211ce8289c2f5a5fdb05ccb5126a8fc0e0
      a8247f0a
  6. 09 Apr, 2012 1 commit
    • VTK Developers's avatar
      Modularize VTK tree layout · cdd4d6fd
      VTK Developers authored
      Move source files from their former monolithic VTK location to their new
      location in modular VTK without modification.  This preserves enough
      information for "git blame -M" and "git log --follow" to connect
      modularized VTK files to their original location and history.
      
      Co-Author: Marcus D. Hanwell <marcus.hanwell@kitware.com>
      Co-Author: Chris Harris <chris.harris@kitware.com>
      Co-Author: Brad King <brad.king@kitware.com>
      Co-Author: Nikhil Shetty <nikhil.shetty@kitware.com>
      cdd4d6fd
  7. 20 May, 2010 1 commit
    • Mark Olesen's avatar
      Remove vtk(Cxx|Type)RevisionMacro · ecbbf7f7
      Mark Olesen authored
      The CVS $Revision$ keyword replacement will no longer maintain these
      macros automatically.  They were used only to implement CollectRevisions
      and vtkObjectBase::PrintRevisions, an API that was never used.
      
      Automated as follows:
      
        pass 0:
        catch templates
        ---------------
        $ git grep 'vtk\(Cxx\|Type\)RevisionMacro' | grep '<'
      
        pass 1:
        main changes
        ---------------
        $ git grep -l '^vtkCxxRevisionMacro' | while read file; do
          echo "$file" 1>&2
          perl -i -ne 'print unless (/^vtkCxxRevisionMacro/ and /\)/)' $file
        done
        $ git grep -l -e 'vtkTypeRevisionMacro(' | while read file; do
          echo "$file" 1>&2
          perl -i -pe 's/vtkTypeRevisionMacro/vtkTypeMacro/g' $file
        done
      
        pass 2:
        verify
        ---------------
        $ git grep 'vtk\(Cxx\|Type\)RevisionMacro'
      
      Fixed multi-line vtkCxxRevisionMacro and templates by hand.
      ecbbf7f7
  8. 23 Apr, 2010 1 commit
    • Mark Olesen's avatar
      Remove vtk(Cxx|Type)RevisionMacro · 19c55e0e
      Mark Olesen authored
      The CVS $Revision$ keyword replacement will no longer maintain these
      macros automatically.  They were used only to implement CollectRevisions
      and vtkObjectBase::PrintRevisions, an API that was never used.
      
      Automated as follows:
      
        pass 0:
        catch templates
        ---------------
        $ git grep 'vtk\(Cxx\|Type\)RevisionMacro' | grep '<'
      
        pass 1:
        main changes
        ---------------
        $ git grep -l '^vtkCxxRevisionMacro' | while read file; do
          echo "$file" 1>&2
          perl -i -ne 'print unless (/^vtkCxxRevisionMacro/ and /\)/)' $file
        done
        $ git grep -l -e 'vtkTypeRevisionMacro(' | while read file; do
          echo "$file" 1>&2
          perl -i -pe 's/vtkTypeRevisionMacro/vtkTypeMacro/g' $file
        done
      
        pass 2:
        verify
        ---------------
        $ git grep 'vtk\(Cxx\|Type\)RevisionMacro'
      
      Fixed multi-line vtkCxxRevisionMacro and templates by hand.
      19c55e0e
  9. 05 Jan, 2006 1 commit
    • Utkarsh Ayachit's avatar
      ENH: · fad86463
      Utkarsh Ayachit authored
      * vtkDataArray now has a new superclass-vtkAbstractArray.vtkAbstractArray
      provides type-agnostic API to access array elements. vtkDataArray provides
      a double API to access values -- such an API is deliberately missing from
      vtkAbstractArray, since arrays like string arrays are not castable to doubles.
      
      * vtkAbstractArray has the notion of components/tuples, but does not make
      any assumptions about the arragment of these. It's up to the concrete
      subclasses how the data is represented in memory.
      
      * vtkFieldData used to provide tuple API to get/set values from data arrays
      contained in it. However, now that FieldData can have arrays that are not
      vtkDataArrays, this API is not longer valid.
      The following are the methods that are no longer available:
      double* GetTuple(const vtkIdType);
      void SetTuple(const vtkIdType i, const double* tuple);
      void GetTuple(const vtkIdType i, double* tuple);
      void InsertTuple(const vtkIdType i, const double* tuple);
      void InsertNextTuple(cons double*);
      double GetComponent(const vtkIdType i, const int j);
      void SetComponent(const vtkIdType i, const int j, const double c);
      void InsertComponent(const vtkIdType i, const int j, const double c);
      However, new API is provided to copy tuples arround from one field data to
      another using:
      void SetTuple(const vtkIdType i, const vtkIdType j, vtkFieldData* source);
      void InsertTuple(const vtkIdType i, const vtkIdType j, vtkFieldData* source);
      vtkIdType InsertNextTuple(const vtkIdType j, vtkFieldData* source);
      
      * vtkFieldData provide a vtkDataArray* GetArray(int index) to retrieve arrays
      in the field data. This function can will now return a NULL if the array
      at the given index is not a data array. It provides
      vtkAbstractArray* GetAbstractArray(int index);
      to retrieve an array even if it isn't a vtkDataArray.
      
      * Since vtkFieldData can contain arrays that aren't subclasses of
      vtkDataArray, so can vtkDataSetAttributes. However, an attribute can only be
      a vtkDataArray subclass i.e. one cannot set a vtkStringArray as the SCALARS
      array for a Point Data, for example.
      
      * String Array IO is only supported in XML file formats. If deemed important,
      support may be added for lecacy file formats.
      
      *** Array Iterators ***
      Another addition to the VTK Arrays, is the notion of Array Iterator. A
      vtkArrayIterator subclass is be provided for every vtkAbstractArray
      subclass. The iterator is a random access iterator. The iterators are not
      available in any of the wrapped languages, however, in C++ they can be used to
      write templatized code to processes the array values without any implicit type
      conversion and consequent loss of precision. vtkArrayIteratorTemplateMacro is
      provided to simply switching between different types of the arrays. Examples of
      use of this macro and the iterators can be found in
      vtkXMLWriter.cxx / vtkXMLDataReader.cxx / vtkXMLStructuredDataReader.cxx.
      fad86463
  10. 17 Nov, 2003 1 commit
  11. 14 Nov, 2003 1 commit
  12. 12 Nov, 2002 1 commit
  13. 07 May, 2002 1 commit
  14. 22 Jan, 2002 1 commit
  15. 04 Jan, 2002 1 commit
    • Brad King's avatar
      ENH: Three sweeping changes. · 12947cd1
      Brad King authored
      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.
      12947cd1
  16. 19 Dec, 2001 1 commit
  17. 13 Nov, 2001 1 commit
  18. 21 Jun, 2001 1 commit
  19. 18 Jun, 2001 1 commit
  20. 10 May, 2001 1 commit
  21. 26 Apr, 2001 1 commit
    • Ken Martin's avatar
      Start new source tree layout · 76f478a8
      Ken Martin authored
      A new CVS repository was created on 2001-04-26 to fork VTK during
      transition to a new source tree layout.  The new repository was created
      using server-side symlinks referencing files in the original repository
      to preserve per-file history.  This commit was manufactured during
      conversion from CVS to represent the fork as a branch.
      76f478a8
  22. 18 Apr, 2001 2 commits
  23. 10 Dec, 2000 1 commit
  24. 28 Apr, 2000 1 commit
  25. 25 Apr, 2000 1 commit
  26. 04 Feb, 2000 1 commit
  27. 26 Jan, 2000 1 commit
  28. 25 Jan, 2000 1 commit
  29. 28 Dec, 1999 1 commit
  30. 11 Oct, 1999 1 commit
  31. 14 Sep, 1999 1 commit
  32. 07 Dec, 1998 1 commit
  33. 14 Oct, 1998 1 commit
  34. 18 Sep, 1998 1 commit
  35. 03 Sep, 1998 1 commit
  36. 29 Jun, 1998 2 commits