
#define R_NO_REMAP
#include <R.h>
#include <Rinternals.h>
#include "wk-v1.h"

/* generated by data-raw/make_callentries.R */
SEXP wk_c_bbox_handler_new(void);
SEXP wk_c_envelope_handler_new(void);
SEXP wk_c_count_handler_new(void);
SEXP wk_c_debug_filter_new(SEXP handler_xptr);
SEXP wk_c_flatten_filter_new(SEXP handler_xptr, SEXP max_depth, SEXP add_details);
SEXP wk_c_read_crc(SEXP data, SEXP handler_xptr, SEXP n_segs);
SEXP wk_c_read_rct(SEXP data, SEXP handlerXptr);
SEXP wk_c_read_sfc_impl(SEXP data, wk_handler_t* handler);
SEXP wk_c_read_sfc(SEXP data, SEXP handler_xptr);
SEXP wk_c_read_wkb(SEXP data, SEXP handler_xptr);
SEXP wk_c_read_wkt(SEXP data, SEXP handler_xptr);
SEXP wk_c_read_xy(SEXP data, SEXP handlerXptr);
SEXP wk_c_identity_filter_new(SEXP handler_xptr);
SEXP wk_c_collection_filter_new(SEXP handler_xptr, SEXP geometry_type, SEXP feature_id);
SEXP wk_c_linestring_filter_new(SEXP handler_xptr, SEXP feature_id);
SEXP wk_c_polygon_filter_new(SEXP handler_xptr, SEXP feature_id, SEXP ring_id);
SEXP wk_c_meta_handler_new(void);
SEXP wk_c_vector_meta_handler_new(void);
SEXP wk_c_orient_filter_new(SEXP handler_xptr, SEXP direction);
SEXP wk_c_problems_handler_new(void);
SEXP wk_c_sfc_writer_new(SEXP promote_multi_sexp);
SEXP wk_c_trans_affine_new(SEXP trans_matrix);
SEXP wk_c_trans_affine_as_matrix(SEXP trans_xptr);
SEXP wk_c_trans_explicit_new(SEXP xy, SEXP use_z, SEXP use_m);
SEXP wk_c_trans_set_new(SEXP xy, SEXP use_z, SEXP use_m);
SEXP wk_c_trans_filter_new(SEXP handler_xptr, SEXP trans_xptr);
SEXP wk_c_wkb_is_na(SEXP geom);
SEXP wk_c_wkb_is_raw_or_null(SEXP geom);
SEXP wk_c_wkb_to_hex(const SEXP geom);
SEXP wk_c_vertex_filter_new(SEXP handler_xptr, SEXP add_details);
SEXP wk_c_handler_void_new(void);
SEXP wk_c_handler_addr(SEXP xptr);
SEXP wk_c_wkb_writer_new(SEXP buffer_size_sexp, SEXP endian_sexp);
SEXP wk_c_wkt_writer(SEXP precision_sexp, SEXP trim_sexp);
SEXP wk_c_wkt_formatter(SEXP precision_sexp, SEXP trim_sexp, SEXP max_coords_sexp);
SEXP wk_c_xy_writer_new(void);

static const R_CallMethodDef CallEntries[] = {
    {"wk_c_bbox_handler_new", (DL_FUNC)&wk_c_bbox_handler_new, 0},
    {"wk_c_envelope_handler_new", (DL_FUNC)&wk_c_envelope_handler_new, 0},
    {"wk_c_count_handler_new", (DL_FUNC)&wk_c_count_handler_new, 0},
    {"wk_c_debug_filter_new", (DL_FUNC)&wk_c_debug_filter_new, 1},
    {"wk_c_flatten_filter_new", (DL_FUNC)&wk_c_flatten_filter_new, 3},
    {"wk_c_read_crc", (DL_FUNC)&wk_c_read_crc, 3},
    {"wk_c_read_rct", (DL_FUNC)&wk_c_read_rct, 2},
    {"wk_c_read_sfc_impl", (DL_FUNC)&wk_c_read_sfc_impl, 2},
    {"wk_c_read_sfc", (DL_FUNC)&wk_c_read_sfc, 2},
    {"wk_c_read_wkb", (DL_FUNC)&wk_c_read_wkb, 2},
    {"wk_c_read_wkt", (DL_FUNC)&wk_c_read_wkt, 2},
    {"wk_c_read_xy", (DL_FUNC)&wk_c_read_xy, 2},
    {"wk_c_identity_filter_new", (DL_FUNC)&wk_c_identity_filter_new, 1},
    {"wk_c_collection_filter_new", (DL_FUNC)&wk_c_collection_filter_new, 3},
    {"wk_c_linestring_filter_new", (DL_FUNC)&wk_c_linestring_filter_new, 2},
    {"wk_c_polygon_filter_new", (DL_FUNC)&wk_c_polygon_filter_new, 3},
    {"wk_c_meta_handler_new", (DL_FUNC)&wk_c_meta_handler_new, 0},
    {"wk_c_vector_meta_handler_new", (DL_FUNC)&wk_c_vector_meta_handler_new, 0},
    {"wk_c_orient_filter_new", (DL_FUNC)&wk_c_orient_filter_new, 2},
    {"wk_c_problems_handler_new", (DL_FUNC)&wk_c_problems_handler_new, 0},
    {"wk_c_sfc_writer_new", (DL_FUNC)&wk_c_sfc_writer_new, 1},
    {"wk_c_trans_affine_new", (DL_FUNC)&wk_c_trans_affine_new, 1},
    {"wk_c_trans_affine_as_matrix", (DL_FUNC)&wk_c_trans_affine_as_matrix, 1},
    {"wk_c_trans_explicit_new", (DL_FUNC)&wk_c_trans_explicit_new, 3},
    {"wk_c_trans_set_new", (DL_FUNC)&wk_c_trans_set_new, 3},
    {"wk_c_trans_filter_new", (DL_FUNC)&wk_c_trans_filter_new, 2},
    {"wk_c_wkb_is_na", (DL_FUNC)&wk_c_wkb_is_na, 1},
    {"wk_c_wkb_is_raw_or_null", (DL_FUNC)&wk_c_wkb_is_raw_or_null, 1},
    {"wk_c_wkb_to_hex", (DL_FUNC)&wk_c_wkb_to_hex, 1},
    {"wk_c_vertex_filter_new", (DL_FUNC)&wk_c_vertex_filter_new, 2},
    {"wk_c_handler_void_new", (DL_FUNC)&wk_c_handler_void_new, 0},
    {"wk_c_handler_addr", (DL_FUNC)&wk_c_handler_addr, 1},
    {"wk_c_wkb_writer_new", (DL_FUNC)&wk_c_wkb_writer_new, 2},
    {"wk_c_wkt_writer", (DL_FUNC)&wk_c_wkt_writer, 2},
    {"wk_c_wkt_formatter", (DL_FUNC)&wk_c_wkt_formatter, 3},
    {"wk_c_xy_writer_new", (DL_FUNC)&wk_c_xy_writer_new, 0},
    {NULL, NULL, 0}};
/* end generated by data-raw/make_callentries.R */

void R_init_wk(DllInfo* dll) {
  R_registerRoutines(dll, NULL, CallEntries, NULL, NULL);
  R_useDynamicSymbols(dll, FALSE);
}
