/usr/include/paraview/vtkKdTreeManager.h is in paraview-dev 5.0.1+dfsg1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105  | /*=========================================================================
  Program:   ParaView
  Module:    vtkKdTreeManager.h
  Copyright (c) Kitware, Inc.
  All rights reserved.
  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkKdTreeManager - class used to generate KdTree from unstructured or
// structured data.
// .SECTION Description
// ParaView needs to build a KdTree when ordered compositing. The KdTree is
// either built using the all data in the pipeline when on structure data is
// present, or using the partitions provided by the structure data's extent
// translator. This class manages this logic. When structure data's extent
// translator is to be used, it simply uses vtkKdTreeGenerator. Otherwise, it
// lets the vtkPKdTree build the optimal partitioning for the data.
#ifndef vtkKdTreeManager_h
#define vtkKdTreeManager_h
#include "vtkObject.h"
#include "vtkPVVTKExtensionsRenderingModule.h" // needed for export macro
#include "vtkSmartPointer.h" // needed for vtkSmartPointer.
class vtkPKdTree;
class vtkAlgorithm;
class vtkDataSet;
class vtkDataObject;
class vtkExtentTranslator;
class VTKPVVTKEXTENSIONSRENDERING_EXPORT vtkKdTreeManager : public vtkObject
{
public:
  static vtkKdTreeManager* New();
  vtkTypeMacro(vtkKdTreeManager, vtkObject);
  void PrintSelf(ostream& os, vtkIndent indent);
  // Description:
  // Add data objects.
  void AddDataObject(vtkDataObject*);
  void RemoveAllDataObjects();
  // Description:
  // Set the optional extent translator to use to get aid in building the
  // KdTree.
  void SetStructuredDataInformation(
    vtkExtentTranslator* translator,
    const int whole_extent[6],
    const double origin[3], const double spacing[3]);
  // Description:
  // Get/Set the KdTree managed by this manager.
  void SetKdTree(vtkPKdTree*);
  vtkGetObjectMacro(KdTree, vtkPKdTree);
  // Description:
  // Get/Set the number of pieces. 
  // Passed to the vtkKdTreeGenerator when SetStructuredDataInformation() is
  // used with non-empty translator.
  vtkSetMacro(NumberOfPieces, int);
  vtkGetMacro(NumberOfPieces, int);
  // Description:
  // Rebuilds the KdTree.
  void GenerateKdTree();
//BTX
protected:
  vtkKdTreeManager();
  ~vtkKdTreeManager();
  void AddDataObjectToKdTree(vtkDataObject *data);
  void AddDataSetToKdTree(vtkDataSet *data);
  bool KdTreeInitialized;
  vtkPKdTree* KdTree;
  int NumberOfPieces;
  vtkSmartPointer<vtkExtentTranslator> ExtentTranslator;
  double Origin[3];
  double Spacing[3];
  int WholeExtent[6];
  vtkSetVector3Macro(Origin, double);
  vtkSetVector3Macro(Spacing, double);
  vtkSetVector6Macro(WholeExtent, int);
private:
  vtkKdTreeManager(const vtkKdTreeManager&); // Not implemented
  void operator=(const vtkKdTreeManager&); // Not implemented
  class vtkDataObjectSet;
  vtkDataObjectSet* DataObjects;
//ETX
};
#endif
 |