33#define M_PI_2 1.57079632679489661922
57 virtual std::string
what();
118 virtual void getChildData(uint32_t index, uint32_t& len,
byte** data)
const = 0;
129 virtual void getData(uint32_t& len,
byte** data)
const = 0;
170 virtual void visitData(std::vector<const IData*>& v) = 0;
211 namespace StorageManager
Base class for all point drawing tools.
Definition Point.js:18
Definition SpatialIndex.h:141
virtual ~ICommand()
Definition SpatialIndex.h:144
virtual void execute(const INode &in)=0
Definition SpatialIndex.h:127
virtual ~IData()
Definition SpatialIndex.h:130
virtual void getData(uint32_t &len, byte **data) const =0
Definition SpatialIndex.h:134
virtual ~IDataStream()
Definition SpatialIndex.h:137
virtual IData * getNext()=0
Definition SpatialIndex.h:106
virtual ~IEntry()
Definition SpatialIndex.h:110
virtual void getShape(IShape **out) const =0
virtual id_type getIdentifier() const =0
Definition SpatialIndex.h:98
virtual ~IEvolvingShape()
Definition SpatialIndex.h:102
virtual void getVMBR(Region &out) const =0
virtual void getMBRAtTime(double t, Region &out) const =0
Definition SpatialIndex.h:148
virtual double getMinimumDistance(const IShape &query, const IData &data)=0
virtual ~INearestNeighborComparator()
Definition SpatialIndex.h:152
virtual double getMinimumDistance(const IShape &query, const IShape &entry)=0
Definition SpatialIndex.h:114
virtual uint32_t getChildrenCount() const =0
virtual uint32_t getLevel() const =0
virtual void getChildShape(uint32_t index, IShape **out) const =0
virtual id_type getChildIdentifier(uint32_t index) const =0
virtual bool isIndex() const =0
virtual ~INode()
Definition SpatialIndex.h:123
virtual bool isLeaf() const =0
virtual void getChildData(uint32_t index, uint32_t &len, byte **data) const =0
Definition SpatialIndex.h:175
virtual void getNextEntry(const IEntry &previouslyFetched, id_type &nextEntryToFetch, bool &bFetchNextEntry)=0
virtual ~IQueryStrategy()
Definition SpatialIndex.h:178
Definition SpatialIndex.h:68
virtual bool containsShape(const IShape &in) const =0
virtual bool touchesShape(const IShape &in) const =0
virtual bool intersectsShape(const IShape &in) const =0
virtual double getMinimumDistance(const IShape &in) const =0
virtual void getCenter(Point &out) const =0
virtual ~IShape()
Definition SpatialIndex.h:78
virtual uint32_t getDimension() const =0
virtual double getArea() const =0
virtual void getMBR(Region &out) const =0
Definition SpatialIndex.h:192
virtual void addCommand(ICommand *in, CommandType ct)=0
virtual void selfJoinQuery(const IShape &s, IVisitor &v)=0
virtual void intersectsWithQuery(const IShape &query, IVisitor &v)=0
virtual void insertData(uint32_t len, const byte *pData, const IShape &shape, id_type shapeIdentifier)=0
virtual ~ISpatialIndex()
Definition SpatialIndex.h:207
virtual bool deleteData(const IShape &shape, id_type shapeIdentifier)=0
virtual void pointLocationQuery(const Point &query, IVisitor &v)=0
virtual void nearestNeighborQuery(uint32_t k, const IShape &query, IVisitor &v, INearestNeighborComparator &nnc)=0
virtual void nearestNeighborQuery(uint32_t k, const IShape &query, IVisitor &v)=0
virtual void getStatistics(IStatistics **out) const =0
virtual bool isIndexValid()=0
virtual void getIndexProperties(Tools::PropertySet &out) const =0
virtual void queryStrategy(IQueryStrategy &qs)=0
virtual void containsWhatQuery(const IShape &query, IVisitor &v)=0
Definition SpatialIndex.h:182
virtual uint64_t getNumberOfData() const =0
virtual ~IStatistics()
Definition SpatialIndex.h:188
virtual uint64_t getWrites() const =0
virtual uint32_t getNumberOfNodes() const =0
virtual uint64_t getReads() const =0
Definition SpatialIndex.h:156
virtual void storeByteArray(id_type &id, const uint32_t len, const byte *const data)=0
virtual ~IStorageManager()
Definition SpatialIndex.h:162
virtual void loadByteArray(const id_type id, uint32_t &len, byte **data)=0
virtual void deleteByteArray(const id_type id)=0
Definition SpatialIndex.h:82
virtual double getIntersectingAreaInTime(const Tools::IInterval &ivI, const ITimeShape &r) const =0
virtual bool touchesShapeInTime(const ITimeShape &in) const =0
virtual double getIntersectingAreaInTime(const ITimeShape &r) const =0
virtual bool containsShapeInTime(const ITimeShape &in) const =0
virtual double getAreaInTime(const Tools::IInterval &ivI) const =0
virtual bool intersectsShapeInTime(const Tools::IInterval &ivI, const ITimeShape &in) const =0
virtual double getAreaInTime() const =0
virtual bool containsShapeInTime(const Tools::IInterval &ivI, const ITimeShape &in) const =0
virtual bool touchesShapeInTime(const Tools::IInterval &ivI, const ITimeShape &in) const =0
virtual ~ITimeShape()
Definition SpatialIndex.h:94
virtual bool intersectsShapeInTime(const ITimeShape &in) const =0
Definition SpatialIndex.h:166
virtual void visitData(std::vector< const IData * > &v)=0
virtual ~IVisitor()
Definition SpatialIndex.h:171
virtual void visitNode(const INode &in)=0
virtual void visitData(const IData &in)=0
Definition SpatialIndex.h:53
InvalidPageException(id_type id)
virtual std::string what()
std::string m_error
Definition SpatialIndex.h:60
virtual ~InvalidPageException()
Definition SpatialIndex.h:56
Definition SpatialIndex.h:220
virtual ~IBuffer()
Definition SpatialIndex.h:224
virtual uint64_t getHits()=0
SIDX_DLL IBuffer * createNewRandomEvictionsBuffer(IStorageManager &in, uint32_t capacity, bool bWriteThrough)
SIDX_DLL IStorageManager * createNewDiskStorageManager(std::string &baseName, uint32_t pageSize)
SIDX_DLL IStorageManager * returnDiskStorageManager(Tools::PropertySet &in)
SIDX_DLL IStorageManager * returnMemoryStorageManager(Tools::PropertySet &in)
SIDX_DLL IStorageManager * createNewMemoryStorageManager()
SIDX_DLL IStorageManager * loadDiskStorageManager(std::string &baseName)
StorageManagerConstants
Definition SpatialIndex.h:214
@ NewPage
Definition SpatialIndex.h:216
@ EmptyPage
Definition SpatialIndex.h:215
SIDX_DLL IBuffer * returnRandomEvictionsBuffer(IStorageManager &ind, Tools::PropertySet &in)
Definition CustomStorage.h:34
CommandType
Definition SpatialIndex.h:46
@ CT_NODEDELETE
Definition SpatialIndex.h:48
@ CT_NODEREAD
Definition SpatialIndex.h:47
@ CT_NODEWRITE
Definition SpatialIndex.h:49
SIDX_DLL std::ostream & operator<<(std::ostream &os, const LineSegment &pt)
int64_t id_type
Definition SpatialIndex.h:43
char s
Definition opennurbs_string.cpp:32
#define SIDX_DLL
Definition sidx_export.h:41