@ -175,270 +175,12 @@ typedef struct
/*
* in geo_ops . h
* in geo_ops . c
*/
/* public point routines */
extern Datum point_in ( PG_FUNCTION_ARGS ) ;
extern Datum point_out ( PG_FUNCTION_ARGS ) ;
extern Datum point_recv ( PG_FUNCTION_ARGS ) ;
extern Datum point_send ( PG_FUNCTION_ARGS ) ;
extern Datum construct_point ( PG_FUNCTION_ARGS ) ;
extern Datum point_left ( PG_FUNCTION_ARGS ) ;
extern Datum point_right ( PG_FUNCTION_ARGS ) ;
extern Datum point_above ( PG_FUNCTION_ARGS ) ;
extern Datum point_below ( PG_FUNCTION_ARGS ) ;
extern Datum point_vert ( PG_FUNCTION_ARGS ) ;
extern Datum point_horiz ( PG_FUNCTION_ARGS ) ;
extern Datum point_eq ( PG_FUNCTION_ARGS ) ;
extern Datum point_ne ( PG_FUNCTION_ARGS ) ;
extern Datum point_distance ( PG_FUNCTION_ARGS ) ;
extern Datum point_slope ( PG_FUNCTION_ARGS ) ;
extern Datum point_add ( PG_FUNCTION_ARGS ) ;
extern Datum point_sub ( PG_FUNCTION_ARGS ) ;
extern Datum point_mul ( PG_FUNCTION_ARGS ) ;
extern Datum point_div ( PG_FUNCTION_ARGS ) ;
/* private routines */
/* private point routines */
extern double point_dt ( Point * pt1 , Point * pt2 ) ;
extern double point_sl ( Point * pt1 , Point * pt2 ) ;
extern double pg_hypot ( double x , double y ) ;
/* public lseg routines */
extern Datum lseg_in ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_out ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_recv ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_send ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_intersect ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_parallel ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_perp ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_vertical ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_horizontal ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_eq ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_ne ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_lt ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_le ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_gt ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_ge ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_construct ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_length ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_distance ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_center ( PG_FUNCTION_ARGS ) ;
extern Datum lseg_interpt ( PG_FUNCTION_ARGS ) ;
extern Datum dist_pl ( PG_FUNCTION_ARGS ) ;
extern Datum dist_ps ( PG_FUNCTION_ARGS ) ;
extern Datum dist_ppath ( PG_FUNCTION_ARGS ) ;
extern Datum dist_pb ( PG_FUNCTION_ARGS ) ;
extern Datum dist_sl ( PG_FUNCTION_ARGS ) ;
extern Datum dist_sb ( PG_FUNCTION_ARGS ) ;
extern Datum dist_lb ( PG_FUNCTION_ARGS ) ;
extern Datum close_lseg ( PG_FUNCTION_ARGS ) ;
extern Datum close_pl ( PG_FUNCTION_ARGS ) ;
extern Datum close_ps ( PG_FUNCTION_ARGS ) ;
extern Datum close_pb ( PG_FUNCTION_ARGS ) ;
extern Datum close_sl ( PG_FUNCTION_ARGS ) ;
extern Datum close_sb ( PG_FUNCTION_ARGS ) ;
extern Datum close_ls ( PG_FUNCTION_ARGS ) ;
extern Datum close_lb ( PG_FUNCTION_ARGS ) ;
extern Datum on_pl ( PG_FUNCTION_ARGS ) ;
extern Datum on_ps ( PG_FUNCTION_ARGS ) ;
extern Datum on_pb ( PG_FUNCTION_ARGS ) ;
extern Datum on_ppath ( PG_FUNCTION_ARGS ) ;
extern Datum on_sl ( PG_FUNCTION_ARGS ) ;
extern Datum on_sb ( PG_FUNCTION_ARGS ) ;
extern Datum inter_sl ( PG_FUNCTION_ARGS ) ;
extern Datum inter_sb ( PG_FUNCTION_ARGS ) ;
extern Datum inter_lb ( PG_FUNCTION_ARGS ) ;
/* public line routines */
extern Datum line_in ( PG_FUNCTION_ARGS ) ;
extern Datum line_out ( PG_FUNCTION_ARGS ) ;
extern Datum line_recv ( PG_FUNCTION_ARGS ) ;
extern Datum line_send ( PG_FUNCTION_ARGS ) ;
extern Datum line_interpt ( PG_FUNCTION_ARGS ) ;
extern Datum line_distance ( PG_FUNCTION_ARGS ) ;
extern Datum line_construct_pp ( PG_FUNCTION_ARGS ) ;
extern Datum line_intersect ( PG_FUNCTION_ARGS ) ;
extern Datum line_parallel ( PG_FUNCTION_ARGS ) ;
extern Datum line_perp ( PG_FUNCTION_ARGS ) ;
extern Datum line_vertical ( PG_FUNCTION_ARGS ) ;
extern Datum line_horizontal ( PG_FUNCTION_ARGS ) ;
extern Datum line_eq ( PG_FUNCTION_ARGS ) ;
/* public box routines */
extern Datum box_in ( PG_FUNCTION_ARGS ) ;
extern Datum box_out ( PG_FUNCTION_ARGS ) ;
extern Datum box_recv ( PG_FUNCTION_ARGS ) ;
extern Datum box_send ( PG_FUNCTION_ARGS ) ;
extern Datum box_same ( PG_FUNCTION_ARGS ) ;
extern Datum box_overlap ( PG_FUNCTION_ARGS ) ;
extern Datum box_left ( PG_FUNCTION_ARGS ) ;
extern Datum box_overleft ( PG_FUNCTION_ARGS ) ;
extern Datum box_right ( PG_FUNCTION_ARGS ) ;
extern Datum box_overright ( PG_FUNCTION_ARGS ) ;
extern Datum box_below ( PG_FUNCTION_ARGS ) ;
extern Datum box_overbelow ( PG_FUNCTION_ARGS ) ;
extern Datum box_above ( PG_FUNCTION_ARGS ) ;
extern Datum box_overabove ( PG_FUNCTION_ARGS ) ;
extern Datum box_contained ( PG_FUNCTION_ARGS ) ;
extern Datum box_contain ( PG_FUNCTION_ARGS ) ;
extern Datum box_contain_pt ( PG_FUNCTION_ARGS ) ;
extern Datum box_below_eq ( PG_FUNCTION_ARGS ) ;
extern Datum box_above_eq ( PG_FUNCTION_ARGS ) ;
extern Datum box_lt ( PG_FUNCTION_ARGS ) ;
extern Datum box_gt ( PG_FUNCTION_ARGS ) ;
extern Datum box_eq ( PG_FUNCTION_ARGS ) ;
extern Datum box_le ( PG_FUNCTION_ARGS ) ;
extern Datum box_ge ( PG_FUNCTION_ARGS ) ;
extern Datum box_area ( PG_FUNCTION_ARGS ) ;
extern Datum box_width ( PG_FUNCTION_ARGS ) ;
extern Datum box_height ( PG_FUNCTION_ARGS ) ;
extern Datum box_distance ( PG_FUNCTION_ARGS ) ;
extern Datum box_center ( PG_FUNCTION_ARGS ) ;
extern Datum box_intersect ( PG_FUNCTION_ARGS ) ;
extern Datum box_diagonal ( PG_FUNCTION_ARGS ) ;
extern Datum points_box ( PG_FUNCTION_ARGS ) ;
extern Datum box_add ( PG_FUNCTION_ARGS ) ;
extern Datum box_sub ( PG_FUNCTION_ARGS ) ;
extern Datum box_mul ( PG_FUNCTION_ARGS ) ;
extern Datum box_div ( PG_FUNCTION_ARGS ) ;
extern Datum point_box ( PG_FUNCTION_ARGS ) ;
extern Datum boxes_bound_box ( PG_FUNCTION_ARGS ) ;
/* public path routines */
extern Datum path_area ( PG_FUNCTION_ARGS ) ;
extern Datum path_in ( PG_FUNCTION_ARGS ) ;
extern Datum path_out ( PG_FUNCTION_ARGS ) ;
extern Datum path_recv ( PG_FUNCTION_ARGS ) ;
extern Datum path_send ( PG_FUNCTION_ARGS ) ;
extern Datum path_n_lt ( PG_FUNCTION_ARGS ) ;
extern Datum path_n_gt ( PG_FUNCTION_ARGS ) ;
extern Datum path_n_eq ( PG_FUNCTION_ARGS ) ;
extern Datum path_n_le ( PG_FUNCTION_ARGS ) ;
extern Datum path_n_ge ( PG_FUNCTION_ARGS ) ;
extern Datum path_inter ( PG_FUNCTION_ARGS ) ;
extern Datum path_distance ( PG_FUNCTION_ARGS ) ;
extern Datum path_length ( PG_FUNCTION_ARGS ) ;
extern Datum path_isclosed ( PG_FUNCTION_ARGS ) ;
extern Datum path_isopen ( PG_FUNCTION_ARGS ) ;
extern Datum path_npoints ( PG_FUNCTION_ARGS ) ;
extern Datum path_close ( PG_FUNCTION_ARGS ) ;
extern Datum path_open ( PG_FUNCTION_ARGS ) ;
extern Datum path_add ( PG_FUNCTION_ARGS ) ;
extern Datum path_add_pt ( PG_FUNCTION_ARGS ) ;
extern Datum path_sub_pt ( PG_FUNCTION_ARGS ) ;
extern Datum path_mul_pt ( PG_FUNCTION_ARGS ) ;
extern Datum path_div_pt ( PG_FUNCTION_ARGS ) ;
extern Datum path_center ( PG_FUNCTION_ARGS ) ;
extern Datum path_poly ( PG_FUNCTION_ARGS ) ;
/* public polygon routines */
extern Datum poly_in ( PG_FUNCTION_ARGS ) ;
extern Datum poly_out ( PG_FUNCTION_ARGS ) ;
extern Datum poly_recv ( PG_FUNCTION_ARGS ) ;
extern Datum poly_send ( PG_FUNCTION_ARGS ) ;
extern Datum poly_left ( PG_FUNCTION_ARGS ) ;
extern Datum poly_overleft ( PG_FUNCTION_ARGS ) ;
extern Datum poly_right ( PG_FUNCTION_ARGS ) ;
extern Datum poly_overright ( PG_FUNCTION_ARGS ) ;
extern Datum poly_below ( PG_FUNCTION_ARGS ) ;
extern Datum poly_overbelow ( PG_FUNCTION_ARGS ) ;
extern Datum poly_above ( PG_FUNCTION_ARGS ) ;
extern Datum poly_overabove ( PG_FUNCTION_ARGS ) ;
extern Datum poly_same ( PG_FUNCTION_ARGS ) ;
extern Datum poly_overlap ( PG_FUNCTION_ARGS ) ;
extern Datum poly_contain ( PG_FUNCTION_ARGS ) ;
extern Datum poly_contained ( PG_FUNCTION_ARGS ) ;
extern Datum poly_contain_pt ( PG_FUNCTION_ARGS ) ;
extern Datum pt_contained_poly ( PG_FUNCTION_ARGS ) ;
extern Datum poly_distance ( PG_FUNCTION_ARGS ) ;
extern Datum poly_npoints ( PG_FUNCTION_ARGS ) ;
extern Datum poly_center ( PG_FUNCTION_ARGS ) ;
extern Datum poly_box ( PG_FUNCTION_ARGS ) ;
extern Datum poly_path ( PG_FUNCTION_ARGS ) ;
extern Datum box_poly ( PG_FUNCTION_ARGS ) ;
/* public circle routines */
extern Datum circle_in ( PG_FUNCTION_ARGS ) ;
extern Datum circle_out ( PG_FUNCTION_ARGS ) ;
extern Datum circle_recv ( PG_FUNCTION_ARGS ) ;
extern Datum circle_send ( PG_FUNCTION_ARGS ) ;
extern Datum circle_same ( PG_FUNCTION_ARGS ) ;
extern Datum circle_overlap ( PG_FUNCTION_ARGS ) ;
extern Datum circle_overleft ( PG_FUNCTION_ARGS ) ;
extern Datum circle_left ( PG_FUNCTION_ARGS ) ;
extern Datum circle_right ( PG_FUNCTION_ARGS ) ;
extern Datum circle_overright ( PG_FUNCTION_ARGS ) ;
extern Datum circle_contained ( PG_FUNCTION_ARGS ) ;
extern Datum circle_contain ( PG_FUNCTION_ARGS ) ;
extern Datum circle_below ( PG_FUNCTION_ARGS ) ;
extern Datum circle_above ( PG_FUNCTION_ARGS ) ;
extern Datum circle_overbelow ( PG_FUNCTION_ARGS ) ;
extern Datum circle_overabove ( PG_FUNCTION_ARGS ) ;
extern Datum circle_eq ( PG_FUNCTION_ARGS ) ;
extern Datum circle_ne ( PG_FUNCTION_ARGS ) ;
extern Datum circle_lt ( PG_FUNCTION_ARGS ) ;
extern Datum circle_gt ( PG_FUNCTION_ARGS ) ;
extern Datum circle_le ( PG_FUNCTION_ARGS ) ;
extern Datum circle_ge ( PG_FUNCTION_ARGS ) ;
extern Datum circle_contain_pt ( PG_FUNCTION_ARGS ) ;
extern Datum pt_contained_circle ( PG_FUNCTION_ARGS ) ;
extern Datum circle_add_pt ( PG_FUNCTION_ARGS ) ;
extern Datum circle_sub_pt ( PG_FUNCTION_ARGS ) ;
extern Datum circle_mul_pt ( PG_FUNCTION_ARGS ) ;
extern Datum circle_div_pt ( PG_FUNCTION_ARGS ) ;
extern Datum circle_diameter ( PG_FUNCTION_ARGS ) ;
extern Datum circle_radius ( PG_FUNCTION_ARGS ) ;
extern Datum circle_distance ( PG_FUNCTION_ARGS ) ;
extern Datum dist_pc ( PG_FUNCTION_ARGS ) ;
extern Datum dist_cpoint ( PG_FUNCTION_ARGS ) ;
extern Datum dist_cpoly ( PG_FUNCTION_ARGS ) ;
extern Datum dist_ppoly ( PG_FUNCTION_ARGS ) ;
extern Datum dist_polyp ( PG_FUNCTION_ARGS ) ;
extern Datum circle_center ( PG_FUNCTION_ARGS ) ;
extern Datum cr_circle ( PG_FUNCTION_ARGS ) ;
extern Datum box_circle ( PG_FUNCTION_ARGS ) ;
extern Datum circle_box ( PG_FUNCTION_ARGS ) ;
extern Datum poly_circle ( PG_FUNCTION_ARGS ) ;
extern Datum circle_poly ( PG_FUNCTION_ARGS ) ;
extern Datum circle_area ( PG_FUNCTION_ARGS ) ;
/* support routines for the GiST access method (access/gist/gistproc.c) */
extern Datum gist_box_compress ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_decompress ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_union ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_picksplit ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_consistent ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_penalty ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_same ( PG_FUNCTION_ARGS ) ;
extern Datum gist_box_fetch ( PG_FUNCTION_ARGS ) ;
extern Datum gist_poly_compress ( PG_FUNCTION_ARGS ) ;
extern Datum gist_poly_consistent ( PG_FUNCTION_ARGS ) ;
extern Datum gist_poly_distance ( PG_FUNCTION_ARGS ) ;
extern Datum gist_circle_compress ( PG_FUNCTION_ARGS ) ;
extern Datum gist_circle_consistent ( PG_FUNCTION_ARGS ) ;
extern Datum gist_circle_distance ( PG_FUNCTION_ARGS ) ;
extern Datum gist_point_compress ( PG_FUNCTION_ARGS ) ;
extern Datum gist_point_consistent ( PG_FUNCTION_ARGS ) ;
extern Datum gist_point_distance ( PG_FUNCTION_ARGS ) ;
extern Datum gist_point_fetch ( PG_FUNCTION_ARGS ) ;
/* utils/adt/geo_spgist.c */
Datum spg_box_quad_config ( PG_FUNCTION_ARGS ) ;
Datum spg_box_quad_choose ( PG_FUNCTION_ARGS ) ;
Datum spg_box_quad_picksplit ( PG_FUNCTION_ARGS ) ;
Datum spg_box_quad_inner_consistent ( PG_FUNCTION_ARGS ) ;
Datum spg_box_quad_leaf_consistent ( PG_FUNCTION_ARGS ) ;
/* geo_selfuncs.c */
extern Datum areasel ( PG_FUNCTION_ARGS ) ;
extern Datum areajoinsel ( PG_FUNCTION_ARGS ) ;
extern Datum positionsel ( PG_FUNCTION_ARGS ) ;
extern Datum positionjoinsel ( PG_FUNCTION_ARGS ) ;
extern Datum contsel ( PG_FUNCTION_ARGS ) ;
extern Datum contjoinsel ( PG_FUNCTION_ARGS ) ;
# endif /* GEO_DECLS_H */