/usr/include/spatialindex/capi/Index.h is in libspatialindex-dev 1.7.0-1.
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 | /******************************************************************************
* $Id: index.hpp 1385 2009-08-13 15:45:16Z hobu $
*
* Project: libsidx - A C API wrapper around libspatialindex
* Purpose: C++ object declarations to implement the wrapper.
* Author: Howard Butler, hobu.inc@gmail.com
*
******************************************************************************
* Copyright (c) 2009, Howard Butler
*
* All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
****************************************************************************/
#pragma once
class Index
{
public:
Index(const Tools::PropertySet& poProperties);
Index(const Tools::PropertySet& poProperties, int (*readNext)(SpatialIndex::id_type *id, double **pMin, double **pMax, uint32_t *nDimension, const uint8_t **pData, uint32_t *nDataLength));
~Index();
const Tools::PropertySet& GetProperties() { return m_properties; }
bool insertFeature(uint64_t id, double *min, double *max);
RTIndexType GetIndexType();
void SetIndexType(RTIndexType v);
RTStorageType GetIndexStorage();
void SetIndexStorage(RTStorageType v);
RTIndexVariant GetIndexVariant();
void SetIndexVariant(RTStorageType v);
SpatialIndex::ISpatialIndex& index() {return *m_rtree;}
SpatialIndex::StorageManager::IBuffer& buffer() {return *m_buffer;}
private:
void Initialize();
SpatialIndex::IStorageManager* m_storage;
SpatialIndex::StorageManager::IBuffer* m_buffer;
SpatialIndex::ISpatialIndex* m_rtree;
Tools::PropertySet m_properties;
void Setup();
SpatialIndex::IStorageManager* CreateStorage();
SpatialIndex::StorageManager::IBuffer* CreateIndexBuffer(SpatialIndex::IStorageManager& storage);
SpatialIndex::ISpatialIndex* CreateIndex();
};
|