34#ifndef __TEMPORAL_RTREE__
35#define __TEMPORAL_RTREE__
40#include "temporal/meos_catalog.h"
47#define SEARCH_ARRAY_STARTING_SIZE 64
48#define MINITEMS_PERCENTAGE 10
49#define MINITEMS ((MAXITEMS) * (MINITEMS_PERCENTAGE) / 100 + 1)
102#define RTREE_NODE_BBOX_N(node, n) ( (void *)( \
103 ((char *) &((node)->boxes)) + (n) * (node)->bboxsize ) )
unsigned char bool
Definition: c.h:405
meosType
Enumeration that defines the built-in and temporal types used in MobilityDB.
Definition: meos_catalog.h:55
External API of the Mobility Engine Open Source (MEOS) library.
long int int64
Definition: postgres_ext_defs.in.h:12
int count
Number of bouding boxes.
Definition: temporal_rtree.h:66
size_t bboxsize
Size of the bouding box.
Definition: temporal_rtree.h:65
char boxes[]
Definition: temporal_rtree.h:74
RTreeNodeType node_type
Definition: temporal_rtree.h:67
struct RTreeNode * nodes[MAXITEMS]
Definition: temporal_rtree.h:70
int64 ids[MAXITEMS]
Definition: temporal_rtree.h:71
Internal representation of an RTree node.
Definition: temporal_rtree.h:64
char box[]
Definition: temporal_rtree.h:95
size_t bboxsize
Size of the bouding box.
Definition: temporal_rtree.h:87
double(* get_axis)(const void *, int, bool)
Definition: temporal_rtree.h:91
meosType bboxtype
Type of the bouding box.
Definition: temporal_rtree.h:88
int dims
Definition: temporal_rtree.h:89
void(* bbox_expand)(const void *, void *)
Definition: temporal_rtree.h:92
bool(* bbox_contains)(const void *, const void *)
Definition: temporal_rtree.h:93
bool(* bbox_overlaps)(const void *, const void *)
Definition: temporal_rtree.h:94
RTreeNode * root
Definition: temporal_rtree.h:90
Rtree in-memory index basic structure.
Definition: temporal_rtree.h:86
RTreeNodeType
Enumeration that defines the node types for an RTree.
Definition: temporal_rtree.h:55
@ RTREE_LEAF
Definition: temporal_rtree.h:56
@ RTREE_INNER
Definition: temporal_rtree.h:57
#define MAXITEMS
In memory index for STBox based on RTree.
Definition: temporal_rtree.h:46