/usr/include/geos/geom/CoordinateArraySequence.h is in libgeos-dev 3.2.2-3ubuntu1.
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 133 134 135 136 137 138 139 140 141 142 143 144 145 | /**********************************************************************
* $Id: CoordinateArraySequence.h 2678 2009-10-17 12:28:41Z strk $
*
* GEOS - Geometry Engine Open Source
* http://geos.refractions.net
*
* Copyright (C) 2006 Refractions Research Inc.
*
* This is free software; you can redistribute and/or modify it under
* the terms of the GNU Lesser General Public Licence as published
* by the Free Software Foundation.
* See the COPYING file for more information.
*
**********************************************************************/
#ifndef GEOS_GEOM_COORDINATEARRAYSEQUENCE_H
#define GEOS_GEOM_COORDINATEARRAYSEQUENCE_H
#include <geos/export.h>
#include <vector>
//#include <geos/platform.h>
#include <geos/geom/CoordinateSequence.h>
#include <geos/inline.h>
// Forward declarations
namespace geos {
namespace geom {
class Coordinate;
}
}
namespace geos {
namespace geom { // geos.geom
/// The default implementation of CoordinateSequence
class GEOS_DLL CoordinateArraySequence : public CoordinateSequence {
public:
CoordinateArraySequence(const CoordinateArraySequence &cl);
CoordinateSequence *clone() const;
//const Coordinate& getCoordinate(int pos) const;
const Coordinate& getAt(size_t pos) const;
/// Copy Coordinate at position i to Coordinate c
virtual void getAt(size_t i, Coordinate& c) const;
//int size() const;
size_t getSize() const;
// @deprecated
const std::vector<Coordinate>* toVector() const;
// See dox in CoordinateSequence.h
void toVector(std::vector<Coordinate>&) const;
/// Construct an empty sequence
CoordinateArraySequence();
/// Construct sequence taking ownership of given Coordinate vector
CoordinateArraySequence(std::vector<Coordinate> *coords);
/// Construct sequence allocating space for n coordinates
CoordinateArraySequence(size_t n);
~CoordinateArraySequence();
bool isEmpty() const;
void add(const Coordinate& c);
virtual void add(const Coordinate& c, bool allowRepeated);
/** \brief
* Inserts the specified coordinate at the specified position in
* this list.
*
* @param i the position at which to insert
* @param coord the coordinate to insert
* @param allowRepeated if set to false, repeated coordinates are
* collapsed
*
* NOTE: this is a CoordinateList interface in JTS
*/
virtual void add(size_t i, const Coordinate& coord, bool allowRepeated);
void setAt(const Coordinate& c, size_t pos);
void deleteAt(size_t pos);
std::string toString() const;
void setPoints(const std::vector<Coordinate> &v);
double getOrdinate(size_t index,
size_t ordinateIndex) const;
void setOrdinate(size_t index, size_t ordinateIndex,
double value);
void expandEnvelope(Envelope &env) const;
size_t getDimension() const { return 3; }
void apply_rw(const CoordinateFilter *filter);
void apply_ro(CoordinateFilter *filter) const;
virtual CoordinateSequence& removeRepeatedPoints();
private:
std::vector<Coordinate> *vect;
};
/// This is for backward API compatibility
typedef CoordinateArraySequence DefaultCoordinateSequence;
} // namespace geos.geom
} // namespace geos
//#ifdef GEOS_INLINE
//# include "geos/geom/CoordinateArraySequence.inl"
//#endif
#endif // ndef GEOS_GEOM_COORDINATEARRAYSEQUENCE_H
/**********************************************************************
* $Log$
* Revision 1.4 2006/06/12 10:10:39 strk
* Fixed getGeometryN() to take size_t rather then int, changed unsigned int parameters to size_t.
*
* Revision 1.3 2006/05/03 08:58:34 strk
* added new non-static CoordinateSequence::removeRepeatedPoints() mutator.
*
* Revision 1.2 2006/03/24 09:52:41 strk
* USE_INLINE => GEOS_INLINE
*
* Revision 1.1 2006/03/09 16:46:49 strk
* geos::geom namespace definition, first pass at headers split
*
**********************************************************************/
|