MySQL 8.0.33
Source Code Documentation
rt_mbr.h
Go to the documentation of this file.
1/* Copyright (c) 2002, 2023, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is also distributed with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have included with MySQL.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License, version 2.0, for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
22
23/**
24 @file storage/myisam/rt_mbr.h
25*/
26
27#ifndef _rt_mbr_h
28#define _rt_mbr_h
29
30#include <sys/types.h>
31
32#include "my_compare.h"
33#include "my_inttypes.h"
34#include "myisam.h"
35
36int rtree_key_cmp(HA_KEYSEG *keyseg, uchar *a, uchar *b, uint key_length,
37 uint nextflag);
38int rtree_combine_rect(HA_KEYSEG *keyseg, uchar *, uchar *, uchar *,
39 uint key_length);
40double rtree_rect_volume(HA_KEYSEG *keyseg, uchar *, uint key_length);
41int rtree_d_mbr(HA_KEYSEG *keyseg, uchar *a, uint key_length, double *res);
42double rtree_overlapping_area(HA_KEYSEG *keyseg, uchar *a, uchar *b,
43 uint key_length);
44double rtree_area_increase(HA_KEYSEG *keyseg, uchar *a, uchar *b,
45 uint key_length, double *ab_area);
46double rtree_perimeter_increase(HA_KEYSEG *keyseg, uchar *a, uchar *b,
47 uint key_length, double *ab_perim);
48int rtree_page_mbr(MI_INFO *info, HA_KEYSEG *keyseg, uchar *page_buf, uchar *c,
49 uint key_length);
50#endif /* _rt_mbr_h */
Some integer typedefs for easier portability.
unsigned char uchar
Definition: my_inttypes.h:51
This file should be included when using myisam functions.
Log info(cout, "NOTE")
double rtree_overlapping_area(HA_KEYSEG *keyseg, uchar *a, uchar *b, uint key_length)
Definition: rt_mbr.cc:417
int rtree_d_mbr(HA_KEYSEG *keyseg, uchar *a, uint key_length, double *res)
Definition: rt_mbr.cc:248
int rtree_key_cmp(HA_KEYSEG *keyseg, uchar *a, uchar *b, uint key_length, uint nextflag)
Definition: rt_mbr.cc:90
int rtree_page_mbr(MI_INFO *info, HA_KEYSEG *keyseg, uchar *page_buf, uchar *c, uint key_length)
Definition: rt_mbr.cc:695
double rtree_area_increase(HA_KEYSEG *keyseg, uchar *a, uchar *b, uint key_length, double *ab_area)
Definition: rt_mbr.cc:502
double rtree_rect_volume(HA_KEYSEG *keyseg, uchar *, uint key_length)
Definition: rt_mbr.cc:172
int rtree_combine_rect(HA_KEYSEG *keyseg, uchar *, uchar *, uchar *, uint key_length)
Definition: rt_mbr.cc:333
double rtree_perimeter_increase(HA_KEYSEG *keyseg, uchar *a, uchar *b, uint key_length, double *ab_perim)
Definition: rt_mbr.cc:593
Definition: my_compare.h:59
Definition: myisamdef.h:251
unsigned int uint
Definition: uca9-dump.cc:74