/usr/include/paraview/vtkSTLWriter.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  | /*=========================================================================
  Program:   Visualization Toolkit
  Module:    vtkSTLWriter.h
  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
  All rights reserved.
  See Copyright.txt or http://www.kitware.com/Copyright.htm 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 vtkSTLWriter - write stereo lithography files
// .SECTION Description
// vtkSTLWriter writes stereo lithography (.stl) files in either ASCII or
// binary form. Stereo lithography files only contain triangles. If polygons
// with more than 3 vertices are present, only the first 3 vertices are
// written.  Use vtkTriangleFilter to convert polygons to triangles.
// .SECTION Caveats
// Binary files written on one system may not be readable on other systems.
// vtkSTLWriter uses VAX or PC byte ordering and swaps bytes on other systems.
#ifndef vtkSTLWriter_h
#define vtkSTLWriter_h
#include "vtkIOGeometryModule.h" // For export macro
#include "vtkWriter.h"
class vtkCellArray;
class vtkPoints;
class vtkPolyData;
class VTKIOGEOMETRY_EXPORT vtkSTLWriter : public vtkWriter
{
public:
  static vtkSTLWriter *New();
  vtkTypeMacro(vtkSTLWriter,vtkWriter);
  virtual void PrintSelf(ostream& os, vtkIndent indent);
  // Description:
  // Get the input to this writer.
  vtkPolyData* GetInput();
  vtkPolyData* GetInput(int port);
  // Description:
  // Specify file name of vtk polygon data file to write.
  vtkSetStringMacro(FileName);
  vtkGetStringMacro(FileName);
  // Description:
  // Set the header for the file.
  vtkSetStringMacro(Header);
  vtkGetStringMacro(Header);
  // Description:
  // Specify file type (ASCII or BINARY) for vtk data file.
  vtkSetClampMacro(FileType,int,VTK_ASCII,VTK_BINARY);
  vtkGetMacro(FileType,int);
  void SetFileTypeToASCII() {this->SetFileType(VTK_ASCII);};
  void SetFileTypeToBinary() {this->SetFileType(VTK_BINARY);};
protected:
  vtkSTLWriter();
  ~vtkSTLWriter()
    {
    delete[] this->FileName;
    delete[] this->Header;
    }
  void WriteData();
  void WriteBinarySTL(
    vtkPoints *pts, vtkCellArray *polys, vtkCellArray *strips);
  void WriteAsciiSTL(
    vtkPoints *pts, vtkCellArray *polys, vtkCellArray *strips);
  char* FileName;
  char *Header;
  int   FileType;
  virtual int FillInputPortInformation(int port, vtkInformation *info);
private:
  vtkSTLWriter(const vtkSTLWriter&);  // Not implemented.
  void operator=(const vtkSTLWriter&);  // Not implemented.
};
#endif
 |