pgLatLon

annotate latlon--0.9--0.10.sql @ 49:b37a0dc6d1ec

Minor fix in documentation regarding GeoJSON_to_ecluster function for GeoJSON indexing
author jbe
date Thu Sep 28 02:10:21 2017 +0200 (2017-09-28)
parents 3cbce515387f
children
rev   line source
jbe@46 1
jbe@46 2 CREATE TYPE epoint_with_sample_count;
jbe@46 3
jbe@46 4 CREATE OR REPLACE FUNCTION ekey_point_in_dummy(cstring)
jbe@46 5 RETURNS ekey_point
jbe@46 6 LANGUAGE C IMMUTABLE STRICT
jbe@46 7 AS '$libdir/latlon-v0009', 'pgl_notimpl';
jbe@46 8
jbe@46 9 CREATE OR REPLACE FUNCTION ekey_point_out_dummy(ekey_point)
jbe@46 10 RETURNS cstring
jbe@46 11 LANGUAGE C IMMUTABLE STRICT
jbe@46 12 AS '$libdir/latlon-v0009', 'pgl_notimpl';
jbe@46 13
jbe@46 14 CREATE OR REPLACE FUNCTION ekey_area_in_dummy(cstring)
jbe@46 15 RETURNS ekey_area
jbe@46 16 LANGUAGE C IMMUTABLE STRICT
jbe@46 17 AS '$libdir/latlon-v0009', 'pgl_notimpl';
jbe@46 18
jbe@46 19 CREATE OR REPLACE FUNCTION ekey_area_out_dummy(ekey_area)
jbe@46 20 RETURNS cstring
jbe@46 21 LANGUAGE C IMMUTABLE STRICT
jbe@46 22 AS '$libdir/latlon-v0009', 'pgl_notimpl';
jbe@46 23
jbe@46 24 CREATE OR REPLACE FUNCTION epoint_in(cstring)
jbe@46 25 RETURNS epoint
jbe@46 26 LANGUAGE C IMMUTABLE STRICT
jbe@46 27 AS '$libdir/latlon-v0009', 'pgl_epoint_in';
jbe@46 28
jbe@46 29 CREATE FUNCTION epoint_with_sample_count_in(cstring)
jbe@46 30 RETURNS epoint_with_sample_count
jbe@46 31 LANGUAGE C IMMUTABLE STRICT
jbe@46 32 AS '$libdir/latlon-v0009', 'pgl_epoint_with_sample_count_in';
jbe@46 33
jbe@46 34 CREATE OR REPLACE FUNCTION ebox_in(cstring)
jbe@46 35 RETURNS ebox
jbe@46 36 LANGUAGE C IMMUTABLE STRICT
jbe@46 37 AS '$libdir/latlon-v0009', 'pgl_ebox_in';
jbe@46 38
jbe@46 39 CREATE OR REPLACE FUNCTION ecircle_in(cstring)
jbe@46 40 RETURNS ecircle
jbe@46 41 LANGUAGE C IMMUTABLE STRICT
jbe@46 42 AS '$libdir/latlon-v0009', 'pgl_ecircle_in';
jbe@46 43
jbe@46 44 CREATE OR REPLACE FUNCTION ecluster_in(cstring)
jbe@46 45 RETURNS ecluster
jbe@46 46 LANGUAGE C IMMUTABLE STRICT
jbe@46 47 AS '$libdir/latlon-v0009', 'pgl_ecluster_in';
jbe@46 48
jbe@46 49 CREATE OR REPLACE FUNCTION epoint_out(epoint)
jbe@46 50 RETURNS cstring
jbe@46 51 LANGUAGE C IMMUTABLE STRICT
jbe@46 52 AS '$libdir/latlon-v0009', 'pgl_epoint_out';
jbe@46 53
jbe@46 54 CREATE FUNCTION epoint_with_sample_count_out(epoint_with_sample_count)
jbe@46 55 RETURNS cstring
jbe@46 56 LANGUAGE C IMMUTABLE STRICT
jbe@46 57 AS '$libdir/latlon-v0009', 'pgl_epoint_with_sample_count_out';
jbe@46 58
jbe@46 59 CREATE OR REPLACE FUNCTION ebox_out(ebox)
jbe@46 60 RETURNS cstring
jbe@46 61 LANGUAGE C IMMUTABLE STRICT
jbe@46 62 AS '$libdir/latlon-v0009', 'pgl_ebox_out';
jbe@46 63
jbe@46 64 CREATE OR REPLACE FUNCTION ecircle_out(ecircle)
jbe@46 65 RETURNS cstring
jbe@46 66 LANGUAGE C IMMUTABLE STRICT
jbe@46 67 AS '$libdir/latlon-v0009', 'pgl_ecircle_out';
jbe@46 68
jbe@46 69 CREATE OR REPLACE FUNCTION ecluster_out(ecluster)
jbe@46 70 RETURNS cstring
jbe@46 71 LANGUAGE C IMMUTABLE STRICT
jbe@46 72 AS '$libdir/latlon-v0009', 'pgl_ecluster_out';
jbe@46 73
jbe@46 74 CREATE OR REPLACE FUNCTION epoint_recv(internal)
jbe@46 75 RETURNS epoint
jbe@46 76 LANGUAGE C IMMUTABLE STRICT
jbe@46 77 AS '$libdir/latlon-v0009', 'pgl_epoint_recv';
jbe@46 78
jbe@46 79 CREATE OR REPLACE FUNCTION ebox_recv(internal)
jbe@46 80 RETURNS ebox
jbe@46 81 LANGUAGE C IMMUTABLE STRICT
jbe@46 82 AS '$libdir/latlon-v0009', 'pgl_ebox_recv';
jbe@46 83
jbe@46 84 CREATE OR REPLACE FUNCTION ecircle_recv(internal)
jbe@46 85 RETURNS ecircle
jbe@46 86 LANGUAGE C IMMUTABLE STRICT
jbe@46 87 AS '$libdir/latlon-v0009', 'pgl_ecircle_recv';
jbe@46 88
jbe@46 89 CREATE OR REPLACE FUNCTION epoint_send(epoint)
jbe@46 90 RETURNS bytea
jbe@46 91 LANGUAGE C IMMUTABLE STRICT
jbe@46 92 AS '$libdir/latlon-v0009', 'pgl_epoint_send';
jbe@46 93
jbe@46 94 CREATE OR REPLACE FUNCTION ebox_send(ebox)
jbe@46 95 RETURNS bytea
jbe@46 96 LANGUAGE C IMMUTABLE STRICT
jbe@46 97 AS '$libdir/latlon-v0009', 'pgl_ebox_send';
jbe@46 98
jbe@46 99 CREATE OR REPLACE FUNCTION ecircle_send(ecircle)
jbe@46 100 RETURNS bytea
jbe@46 101 LANGUAGE C IMMUTABLE STRICT
jbe@46 102 AS '$libdir/latlon-v0009', 'pgl_ecircle_send';
jbe@46 103
jbe@46 104 CREATE TYPE epoint_with_sample_count (
jbe@46 105 internallength = 20,
jbe@46 106 input = epoint_with_sample_count_in,
jbe@46 107 output = epoint_with_sample_count_out,
jbe@46 108 alignment = double );
jbe@46 109
jbe@46 110 CREATE OR REPLACE FUNCTION epoint_btree_lt(epoint, epoint)
jbe@46 111 RETURNS boolean
jbe@46 112 LANGUAGE C IMMUTABLE STRICT
jbe@46 113 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_lt';
jbe@46 114
jbe@46 115 CREATE OR REPLACE FUNCTION epoint_btree_le(epoint, epoint)
jbe@46 116 RETURNS boolean
jbe@46 117 LANGUAGE C IMMUTABLE STRICT
jbe@46 118 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_le';
jbe@46 119
jbe@46 120 CREATE OR REPLACE FUNCTION epoint_btree_eq(epoint, epoint)
jbe@46 121 RETURNS boolean
jbe@46 122 LANGUAGE C IMMUTABLE STRICT
jbe@46 123 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_eq';
jbe@46 124
jbe@46 125 CREATE OR REPLACE FUNCTION epoint_btree_ne(epoint, epoint)
jbe@46 126 RETURNS boolean
jbe@46 127 LANGUAGE C IMMUTABLE STRICT
jbe@46 128 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_ne';
jbe@46 129
jbe@46 130 CREATE OR REPLACE FUNCTION epoint_btree_ge(epoint, epoint)
jbe@46 131 RETURNS boolean
jbe@46 132 LANGUAGE C IMMUTABLE STRICT
jbe@46 133 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_ge';
jbe@46 134
jbe@46 135 CREATE OR REPLACE FUNCTION epoint_btree_gt(epoint, epoint)
jbe@46 136 RETURNS boolean
jbe@46 137 LANGUAGE C IMMUTABLE STRICT
jbe@46 138 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_gt';
jbe@46 139
jbe@46 140 CREATE OR REPLACE FUNCTION epoint_btree_cmp(epoint, epoint)
jbe@46 141 RETURNS int4
jbe@46 142 LANGUAGE C IMMUTABLE STRICT
jbe@46 143 AS '$libdir/latlon-v0009', 'pgl_btree_epoint_cmp';
jbe@46 144
jbe@46 145 CREATE OR REPLACE FUNCTION ebox_btree_lt(ebox, ebox)
jbe@46 146 RETURNS boolean
jbe@46 147 LANGUAGE C IMMUTABLE STRICT
jbe@46 148 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_lt';
jbe@46 149
jbe@46 150 CREATE OR REPLACE FUNCTION ebox_btree_le(ebox, ebox)
jbe@46 151 RETURNS boolean
jbe@46 152 LANGUAGE C IMMUTABLE STRICT
jbe@46 153 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_le';
jbe@46 154
jbe@46 155 CREATE OR REPLACE FUNCTION ebox_btree_eq(ebox, ebox)
jbe@46 156 RETURNS boolean
jbe@46 157 LANGUAGE C IMMUTABLE STRICT
jbe@46 158 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_eq';
jbe@46 159
jbe@46 160 CREATE OR REPLACE FUNCTION ebox_btree_ne(ebox, ebox)
jbe@46 161 RETURNS boolean
jbe@46 162 LANGUAGE C IMMUTABLE STRICT
jbe@46 163 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_ne';
jbe@46 164
jbe@46 165 CREATE OR REPLACE FUNCTION ebox_btree_ge(ebox, ebox)
jbe@46 166 RETURNS boolean
jbe@46 167 LANGUAGE C IMMUTABLE STRICT
jbe@46 168 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_ge';
jbe@46 169
jbe@46 170 CREATE OR REPLACE FUNCTION ebox_btree_gt(ebox, ebox)
jbe@46 171 RETURNS boolean
jbe@46 172 LANGUAGE C IMMUTABLE STRICT
jbe@46 173 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_gt';
jbe@46 174
jbe@46 175 CREATE OR REPLACE FUNCTION ebox_btree_cmp(ebox, ebox)
jbe@46 176 RETURNS int4
jbe@46 177 LANGUAGE C IMMUTABLE STRICT
jbe@46 178 AS '$libdir/latlon-v0009', 'pgl_btree_ebox_cmp';
jbe@46 179
jbe@46 180 CREATE OR REPLACE FUNCTION ecircle_btree_lt(ecircle, ecircle)
jbe@46 181 RETURNS boolean
jbe@46 182 LANGUAGE C IMMUTABLE STRICT
jbe@46 183 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_lt';
jbe@46 184
jbe@46 185 CREATE OR REPLACE FUNCTION ecircle_btree_le(ecircle, ecircle)
jbe@46 186 RETURNS boolean
jbe@46 187 LANGUAGE C IMMUTABLE STRICT
jbe@46 188 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_le';
jbe@46 189
jbe@46 190 CREATE OR REPLACE FUNCTION ecircle_btree_eq(ecircle, ecircle)
jbe@46 191 RETURNS boolean
jbe@46 192 LANGUAGE C IMMUTABLE STRICT
jbe@46 193 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_eq';
jbe@46 194
jbe@46 195 CREATE OR REPLACE FUNCTION ecircle_btree_ne(ecircle, ecircle)
jbe@46 196 RETURNS boolean
jbe@46 197 LANGUAGE C IMMUTABLE STRICT
jbe@46 198 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_ne';
jbe@46 199
jbe@46 200 CREATE OR REPLACE FUNCTION ecircle_btree_ge(ecircle, ecircle)
jbe@46 201 RETURNS boolean
jbe@46 202 LANGUAGE C IMMUTABLE STRICT
jbe@46 203 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_ge';
jbe@46 204
jbe@46 205 CREATE OR REPLACE FUNCTION ecircle_btree_gt(ecircle, ecircle)
jbe@46 206 RETURNS boolean
jbe@46 207 LANGUAGE C IMMUTABLE STRICT
jbe@46 208 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_gt';
jbe@46 209
jbe@46 210 CREATE OR REPLACE FUNCTION ecircle_btree_cmp(ecircle, ecircle)
jbe@46 211 RETURNS int4
jbe@46 212 LANGUAGE C IMMUTABLE STRICT
jbe@46 213 AS '$libdir/latlon-v0009', 'pgl_btree_ecircle_cmp';
jbe@46 214
jbe@46 215 CREATE OR REPLACE FUNCTION cast_epoint_to_ebox(epoint)
jbe@46 216 RETURNS ebox
jbe@46 217 LANGUAGE C IMMUTABLE STRICT
jbe@46 218 AS '$libdir/latlon-v0009', 'pgl_epoint_to_ebox';
jbe@46 219
jbe@46 220 CREATE OR REPLACE FUNCTION cast_epoint_to_ecircle(epoint)
jbe@46 221 RETURNS ecircle
jbe@46 222 LANGUAGE C IMMUTABLE STRICT
jbe@46 223 AS '$libdir/latlon-v0009', 'pgl_epoint_to_ecircle';
jbe@46 224
jbe@46 225 CREATE OR REPLACE FUNCTION cast_epoint_to_ecluster(epoint)
jbe@46 226 RETURNS ecluster
jbe@46 227 LANGUAGE C IMMUTABLE STRICT
jbe@46 228 AS '$libdir/latlon-v0009', 'pgl_epoint_to_ecluster';
jbe@46 229
jbe@46 230 CREATE OR REPLACE FUNCTION cast_ebox_to_ecluster(ebox)
jbe@46 231 RETURNS ecluster
jbe@46 232 LANGUAGE C IMMUTABLE STRICT
jbe@46 233 AS '$libdir/latlon-v0009', 'pgl_ebox_to_ecluster';
jbe@46 234
jbe@46 235 CREATE OR REPLACE FUNCTION epoint(float8, float8)
jbe@46 236 RETURNS epoint
jbe@46 237 LANGUAGE C IMMUTABLE STRICT
jbe@46 238 AS '$libdir/latlon-v0009', 'pgl_create_epoint';
jbe@46 239
jbe@46 240 CREATE FUNCTION epoint_with_sample_count(epoint, int4)
jbe@46 241 RETURNS epoint_with_sample_count
jbe@46 242 LANGUAGE C IMMUTABLE STRICT
jbe@46 243 AS '$libdir/latlon-v0009', 'pgl_create_epoint_with_sample_count';
jbe@46 244
jbe@46 245 CREATE OR REPLACE FUNCTION empty_ebox()
jbe@46 246 RETURNS ebox
jbe@46 247 LANGUAGE C IMMUTABLE STRICT
jbe@46 248 AS '$libdir/latlon-v0009', 'pgl_create_empty_ebox';
jbe@46 249
jbe@46 250 CREATE OR REPLACE FUNCTION ebox(float8, float8, float8, float8)
jbe@46 251 RETURNS ebox
jbe@46 252 LANGUAGE C IMMUTABLE STRICT
jbe@46 253 AS '$libdir/latlon-v0009', 'pgl_create_ebox';
jbe@46 254
jbe@46 255 CREATE OR REPLACE FUNCTION ebox(epoint, epoint)
jbe@46 256 RETURNS ebox
jbe@46 257 LANGUAGE C IMMUTABLE STRICT
jbe@46 258 AS '$libdir/latlon-v0009', 'pgl_create_ebox_from_epoints';
jbe@46 259
jbe@46 260 CREATE OR REPLACE FUNCTION ecircle(float8, float8, float8)
jbe@46 261 RETURNS ecircle
jbe@46 262 LANGUAGE C IMMUTABLE STRICT
jbe@46 263 AS '$libdir/latlon-v0009', 'pgl_create_ecircle';
jbe@46 264
jbe@46 265 CREATE OR REPLACE FUNCTION ecircle(epoint, float8)
jbe@46 266 RETURNS ecircle
jbe@46 267 LANGUAGE C IMMUTABLE STRICT
jbe@46 268 AS '$libdir/latlon-v0009', 'pgl_create_ecircle_from_epoint';
jbe@46 269
jbe@46 270 CREATE OR REPLACE FUNCTION latitude(epoint)
jbe@46 271 RETURNS float8
jbe@46 272 LANGUAGE C IMMUTABLE STRICT
jbe@46 273 AS '$libdir/latlon-v0009', 'pgl_epoint_lat';
jbe@46 274
jbe@46 275 CREATE OR REPLACE FUNCTION longitude(epoint)
jbe@46 276 RETURNS float8
jbe@46 277 LANGUAGE C IMMUTABLE STRICT
jbe@46 278 AS '$libdir/latlon-v0009', 'pgl_epoint_lon';
jbe@46 279
jbe@46 280 CREATE OR REPLACE FUNCTION min_latitude(ebox)
jbe@46 281 RETURNS float8
jbe@46 282 LANGUAGE C IMMUTABLE STRICT
jbe@46 283 AS '$libdir/latlon-v0009', 'pgl_ebox_lat_min';
jbe@46 284
jbe@46 285 CREATE OR REPLACE FUNCTION max_latitude(ebox)
jbe@46 286 RETURNS float8
jbe@46 287 LANGUAGE C IMMUTABLE STRICT
jbe@46 288 AS '$libdir/latlon-v0009', 'pgl_ebox_lat_max';
jbe@46 289
jbe@46 290 CREATE OR REPLACE FUNCTION min_longitude(ebox)
jbe@46 291 RETURNS float8
jbe@46 292 LANGUAGE C IMMUTABLE STRICT
jbe@46 293 AS '$libdir/latlon-v0009', 'pgl_ebox_lon_min';
jbe@46 294
jbe@46 295 CREATE OR REPLACE FUNCTION max_longitude(ebox)
jbe@46 296 RETURNS float8
jbe@46 297 LANGUAGE C IMMUTABLE STRICT
jbe@46 298 AS '$libdir/latlon-v0009', 'pgl_ebox_lon_max';
jbe@46 299
jbe@46 300 CREATE OR REPLACE FUNCTION center(ecircle)
jbe@46 301 RETURNS epoint
jbe@46 302 LANGUAGE C IMMUTABLE STRICT
jbe@46 303 AS '$libdir/latlon-v0009', 'pgl_ecircle_center';
jbe@46 304
jbe@46 305 CREATE OR REPLACE FUNCTION radius(ecircle)
jbe@46 306 RETURNS float8
jbe@46 307 LANGUAGE C IMMUTABLE STRICT
jbe@46 308 AS '$libdir/latlon-v0009', 'pgl_ecircle_radius';
jbe@46 309
jbe@46 310 CREATE OR REPLACE FUNCTION epoint_ebox_overlap_proc(epoint, ebox)
jbe@46 311 RETURNS boolean
jbe@46 312 LANGUAGE C IMMUTABLE STRICT
jbe@46 313 AS '$libdir/latlon-v0009', 'pgl_epoint_ebox_overlap';
jbe@46 314
jbe@46 315 CREATE OR REPLACE FUNCTION epoint_ecircle_overlap_proc(epoint, ecircle)
jbe@46 316 RETURNS boolean
jbe@46 317 LANGUAGE C IMMUTABLE STRICT
jbe@46 318 AS '$libdir/latlon-v0009', 'pgl_epoint_ecircle_overlap';
jbe@46 319
jbe@46 320 CREATE OR REPLACE FUNCTION epoint_ecluster_overlap_proc(epoint, ecluster)
jbe@46 321 RETURNS boolean
jbe@46 322 LANGUAGE C IMMUTABLE STRICT
jbe@46 323 AS '$libdir/latlon-v0009', 'pgl_epoint_ecluster_overlap';
jbe@46 324
jbe@46 325 CREATE OR REPLACE FUNCTION epoint_ecluster_may_overlap_proc(epoint, ecluster)
jbe@46 326 RETURNS boolean
jbe@46 327 LANGUAGE C IMMUTABLE STRICT
jbe@46 328 AS '$libdir/latlon-v0009', 'pgl_epoint_ecluster_may_overlap';
jbe@46 329
jbe@46 330 CREATE OR REPLACE FUNCTION ebox_overlap_proc(ebox, ebox)
jbe@46 331 RETURNS boolean
jbe@46 332 LANGUAGE C IMMUTABLE STRICT
jbe@46 333 AS '$libdir/latlon-v0009', 'pgl_ebox_overlap';
jbe@46 334
jbe@46 335 CREATE OR REPLACE FUNCTION ebox_ecircle_may_overlap_proc(ebox, ecircle)
jbe@46 336 RETURNS boolean
jbe@46 337 LANGUAGE C IMMUTABLE STRICT
jbe@46 338 AS '$libdir/latlon-v0009', 'pgl_ebox_ecircle_may_overlap';
jbe@46 339
jbe@46 340 CREATE OR REPLACE FUNCTION ebox_ecluster_may_overlap_proc(ebox, ecluster)
jbe@46 341 RETURNS boolean
jbe@46 342 LANGUAGE C IMMUTABLE STRICT
jbe@46 343 AS '$libdir/latlon-v0009', 'pgl_ebox_ecluster_may_overlap';
jbe@46 344
jbe@46 345 CREATE OR REPLACE FUNCTION ecircle_overlap_proc(ecircle, ecircle)
jbe@46 346 RETURNS boolean
jbe@46 347 LANGUAGE C IMMUTABLE STRICT
jbe@46 348 AS '$libdir/latlon-v0009', 'pgl_ecircle_overlap';
jbe@46 349
jbe@46 350 CREATE OR REPLACE FUNCTION ecircle_ecluster_overlap_proc(ecircle, ecluster)
jbe@46 351 RETURNS boolean
jbe@46 352 LANGUAGE C IMMUTABLE STRICT
jbe@46 353 AS '$libdir/latlon-v0009', 'pgl_ecircle_ecluster_overlap';
jbe@46 354
jbe@46 355 CREATE OR REPLACE FUNCTION ecircle_ecluster_may_overlap_proc(ecircle, ecluster)
jbe@46 356 RETURNS boolean
jbe@46 357 LANGUAGE C IMMUTABLE STRICT
jbe@46 358 AS '$libdir/latlon-v0009', 'pgl_ecircle_ecluster_may_overlap';
jbe@46 359
jbe@46 360 CREATE OR REPLACE FUNCTION ecluster_overlap_proc(ecluster, ecluster)
jbe@46 361 RETURNS boolean
jbe@46 362 LANGUAGE C IMMUTABLE STRICT
jbe@46 363 AS '$libdir/latlon-v0009', 'pgl_ecluster_overlap';
jbe@46 364
jbe@46 365 CREATE OR REPLACE FUNCTION ecluster_may_overlap_proc(ecluster, ecluster)
jbe@46 366 RETURNS boolean
jbe@46 367 LANGUAGE C IMMUTABLE STRICT
jbe@46 368 AS '$libdir/latlon-v0009', 'pgl_ecluster_may_overlap';
jbe@46 369
jbe@46 370 CREATE OR REPLACE FUNCTION ecluster_contains_proc(ecluster, ecluster)
jbe@46 371 RETURNS boolean
jbe@46 372 LANGUAGE C IMMUTABLE STRICT
jbe@46 373 AS '$libdir/latlon-v0009', 'pgl_ecluster_contains';
jbe@46 374
jbe@46 375 CREATE OR REPLACE FUNCTION epoint_distance_proc(epoint, epoint)
jbe@46 376 RETURNS float8
jbe@46 377 LANGUAGE C IMMUTABLE STRICT
jbe@46 378 AS '$libdir/latlon-v0009', 'pgl_epoint_distance';
jbe@46 379
jbe@46 380 CREATE OR REPLACE FUNCTION epoint_ecircle_distance_proc(epoint, ecircle)
jbe@46 381 RETURNS float8
jbe@46 382 LANGUAGE C IMMUTABLE STRICT
jbe@46 383 AS '$libdir/latlon-v0009', 'pgl_epoint_ecircle_distance';
jbe@46 384
jbe@46 385 CREATE OR REPLACE FUNCTION epoint_ecluster_distance_proc(epoint, ecluster)
jbe@46 386 RETURNS float8
jbe@46 387 LANGUAGE C IMMUTABLE STRICT
jbe@46 388 AS '$libdir/latlon-v0009', 'pgl_epoint_ecluster_distance';
jbe@46 389
jbe@46 390 CREATE OR REPLACE FUNCTION ecircle_distance_proc(ecircle, ecircle)
jbe@46 391 RETURNS float8
jbe@46 392 LANGUAGE C IMMUTABLE STRICT
jbe@46 393 AS '$libdir/latlon-v0009', 'pgl_ecircle_distance';
jbe@46 394
jbe@46 395 CREATE OR REPLACE FUNCTION ecircle_ecluster_distance_proc(ecircle, ecluster)
jbe@46 396 RETURNS float8
jbe@46 397 LANGUAGE C IMMUTABLE STRICT
jbe@46 398 AS '$libdir/latlon-v0009', 'pgl_ecircle_ecluster_distance';
jbe@46 399
jbe@46 400 CREATE OR REPLACE FUNCTION ecluster_distance_proc(ecluster, ecluster)
jbe@46 401 RETURNS float8
jbe@46 402 LANGUAGE C IMMUTABLE STRICT
jbe@46 403 AS '$libdir/latlon-v0009', 'pgl_ecluster_distance';
jbe@46 404
jbe@46 405 DROP FUNCTION monte_carlo_area(ecluster, int4);
jbe@46 406
jbe@46 407 CREATE FUNCTION fair_distance_operator_proc(ecluster, epoint_with_sample_count)
jbe@46 408 RETURNS float8
jbe@46 409 LANGUAGE C IMMUTABLE STRICT
jbe@46 410 AS '$libdir/latlon-v0009', 'pgl_ecluster_epoint_sc_fair_distance';
jbe@46 411
jbe@46 412 CREATE OPERATOR <=> (
jbe@46 413 leftarg = ecluster,
jbe@46 414 rightarg = epoint_with_sample_count,
jbe@46 415 procedure = fair_distance_operator_proc
jbe@46 416 );
jbe@46 417
jbe@46 418 CREATE OR REPLACE FUNCTION pgl_gist_consistent(internal, internal, smallint, oid, internal)
jbe@46 419 RETURNS boolean
jbe@46 420 LANGUAGE C STRICT
jbe@46 421 AS '$libdir/latlon-v0009', 'pgl_gist_consistent';
jbe@46 422
jbe@46 423 CREATE OR REPLACE FUNCTION pgl_gist_union(internal, internal)
jbe@46 424 RETURNS internal
jbe@46 425 LANGUAGE C STRICT
jbe@46 426 AS '$libdir/latlon-v0009', 'pgl_gist_union';
jbe@46 427
jbe@46 428 CREATE OR REPLACE FUNCTION pgl_gist_compress_epoint(internal)
jbe@46 429 RETURNS internal
jbe@46 430 LANGUAGE C STRICT
jbe@46 431 AS '$libdir/latlon-v0009', 'pgl_gist_compress_epoint';
jbe@46 432
jbe@46 433 CREATE OR REPLACE FUNCTION pgl_gist_compress_ecircle(internal)
jbe@46 434 RETURNS internal
jbe@46 435 LANGUAGE C STRICT
jbe@46 436 AS '$libdir/latlon-v0009', 'pgl_gist_compress_ecircle';
jbe@46 437
jbe@46 438 CREATE OR REPLACE FUNCTION pgl_gist_compress_ecluster(internal)
jbe@46 439 RETURNS internal
jbe@46 440 LANGUAGE C STRICT
jbe@46 441 AS '$libdir/latlon-v0009', 'pgl_gist_compress_ecluster';
jbe@46 442
jbe@46 443 CREATE OR REPLACE FUNCTION pgl_gist_decompress(internal)
jbe@46 444 RETURNS internal
jbe@46 445 LANGUAGE C STRICT
jbe@46 446 AS '$libdir/latlon-v0009', 'pgl_gist_decompress';
jbe@46 447
jbe@46 448 CREATE OR REPLACE FUNCTION pgl_gist_penalty(internal, internal, internal)
jbe@46 449 RETURNS internal
jbe@46 450 LANGUAGE C STRICT
jbe@46 451 AS '$libdir/latlon-v0009', 'pgl_gist_penalty';
jbe@46 452
jbe@46 453 CREATE OR REPLACE FUNCTION pgl_gist_picksplit(internal, internal)
jbe@46 454 RETURNS internal
jbe@46 455 LANGUAGE C STRICT
jbe@46 456 AS '$libdir/latlon-v0009', 'pgl_gist_picksplit';
jbe@46 457
jbe@46 458 CREATE OR REPLACE FUNCTION pgl_gist_same(internal, internal, internal)
jbe@46 459 RETURNS internal
jbe@46 460 LANGUAGE C STRICT
jbe@46 461 AS '$libdir/latlon-v0009', 'pgl_gist_same';
jbe@46 462
jbe@46 463 CREATE OR REPLACE FUNCTION pgl_gist_distance(internal, internal, smallint, oid)
jbe@46 464 RETURNS internal
jbe@46 465 LANGUAGE C STRICT
jbe@46 466 AS '$libdir/latlon-v0009', 'pgl_gist_distance';
jbe@46 467
jbe@46 468 DROP OPERATOR CLASS ecluster_ops USING gist;
jbe@46 469
jbe@46 470 CREATE OPERATOR CLASS ecluster_ops
jbe@46 471 DEFAULT FOR TYPE ecluster USING gist AS
jbe@46 472 OPERATOR 21 && (ecluster, epoint),
jbe@46 473 OPERATOR 121 &&+ (ecluster, epoint),
jbe@46 474 OPERATOR 221 @> (ecluster, epoint),
jbe@46 475 OPERATOR 22 && (ecluster, ebox),
jbe@46 476 OPERATOR 122 &&+ (ecluster, ebox),
jbe@46 477 OPERATOR 222 @> (ecluster, ebox),
jbe@46 478 OPERATOR 322 <@ (ecluster, ebox),
jbe@46 479 OPERATOR 23 && (ecluster, ecircle),
jbe@46 480 OPERATOR 123 &&+ (ecluster, ecircle),
jbe@46 481 OPERATOR 24 && (ecluster, ecluster),
jbe@46 482 OPERATOR 124 &&+ (ecluster, ecluster),
jbe@46 483 OPERATOR 224 @> (ecluster, ecluster),
jbe@46 484 OPERATOR 324 <@ (ecluster, ecluster),
jbe@46 485 OPERATOR 31 <-> (ecluster, epoint) FOR ORDER BY float_ops,
jbe@46 486 OPERATOR 32 <-> (ecluster, ebox) FOR ORDER BY float_ops,
jbe@46 487 OPERATOR 33 <-> (ecluster, ecircle) FOR ORDER BY float_ops,
jbe@46 488 OPERATOR 34 <-> (ecluster, ecluster) FOR ORDER BY float_ops,
jbe@46 489 OPERATOR 131 <=> (ecluster, epoint_with_sample_count) FOR ORDER BY float_ops,
jbe@46 490 FUNCTION 1 pgl_gist_consistent(internal, internal, smallint, oid, internal),
jbe@46 491 FUNCTION 2 pgl_gist_union(internal, internal),
jbe@46 492 FUNCTION 3 pgl_gist_compress_ecluster(internal),
jbe@46 493 FUNCTION 4 pgl_gist_decompress(internal),
jbe@46 494 FUNCTION 5 pgl_gist_penalty(internal, internal, internal),
jbe@46 495 FUNCTION 6 pgl_gist_picksplit(internal, internal),
jbe@46 496 FUNCTION 7 pgl_gist_same(internal, internal, internal),
jbe@46 497 FUNCTION 8 pgl_gist_distance(internal, internal, smallint, oid),
jbe@46 498 STORAGE ekey_area;
jbe@46 499
jbe@46 500 CREATE OR REPLACE FUNCTION fair_distance(ecluster, epoint, int4 = 10000)
jbe@46 501 RETURNS float8
jbe@46 502 LANGUAGE sql IMMUTABLE AS 'SELECT $1 <=> epoint_with_sample_count($2, $3)';
jbe@46 503
jbe@46 504

Impressum / About Us