/usr/include/vtk-7.1/vtkArrayCoordinates.h is in libvtk7-dev 7.1.1+dfsg1-2.
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 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkArrayCoordinates.h
-------------------------------------------------------------------------
Copyright 2008 Sandia Corporation.
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
the U.S. Government retains certain rights in this software.
-------------------------------------------------------------------------
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.
=========================================================================*/
/**
* @class vtkArrayCoordinates
* @brief Stores coordinate into an N-way array.
*
*
* vtkArrayCoordinates stores a collection of coordinates that can be
* used to access values in a vtkArray containing an arbitrary number of
* dimensions.
*
* Convenience constructors are provided for working with one, two, and
* three dimensions. For higher dimensions, use the default constructor,
* SetDimensions() and operator[] to assign a coordinate value along each
* dimension.
*
* @sa
* vtkArray, vtkArrayExtents
*
* @par Thanks:
* Developed by Timothy M. Shead (tshead@sandia.gov) at Sandia National
* Laboratories.
*/
#ifndef vtkArrayCoordinates_h
#define vtkArrayCoordinates_h
#include "vtkCommonCoreModule.h" // For export macro
#include "vtkSystemIncludes.h"
#include <vector>
class VTKCOMMONCORE_EXPORT vtkArrayCoordinates
{
public:
typedef vtkIdType CoordinateT;
typedef vtkIdType DimensionT;
/**
* Create an empty set of coordinates. Use SetDimensions() and
* operator[] to populate the coordinates.
*/
vtkArrayCoordinates();
/**
* Create coordinates for a one-dimensional array.
*/
explicit vtkArrayCoordinates(CoordinateT i);
/**
* Create coordinates for a two-dimensional array.
*/
vtkArrayCoordinates(CoordinateT i, CoordinateT j);
/**
* Create coordinates for a three-dimensional array.
*/
vtkArrayCoordinates(CoordinateT i, CoordinateT j, CoordinateT k);
/**
* Return the number of dimensions contained in the coordinates.
*/
DimensionT GetDimensions() const;
/**
* Set the number of dimensions. Note that this method resets the
* coordinate along each dimension to zero, so you must set every
* coordinate explicitly using operator[] after calling SetDimensions().
*/
void SetDimensions(DimensionT dimensions);
/**
* Returns the coordinate of the i-th dimension.
*/
CoordinateT& operator[](DimensionT i);
/**
* Returns the coordinate of the i-th dimension.
*/
const CoordinateT& operator[](DimensionT i) const;
/**
* Returns the coordinate of the i-th dimension.
*/
CoordinateT GetCoordinate(DimensionT i) const;
/**
* Sets the coordinate of the i-th dimension.
*/
void SetCoordinate(DimensionT i, const CoordinateT&);
/**
* Equality comparison
*/
bool operator==(const vtkArrayCoordinates& rhs) const;
//@{
/**
* Inequality comparison
*/
bool operator!=(const vtkArrayCoordinates& rhs) const;
VTKCOMMONCORE_EXPORT friend ostream& operator<<(
ostream& stream, const vtkArrayCoordinates& rhs);
//@}
private:
std::vector<CoordinateT> Storage;
};
#endif
// VTK-HeaderTest-Exclude: vtkArrayCoordinates.h
|