# Generated by using Rcpp::compileAttributes() -> do not edit by hand
# Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393

JP_int <- function(nn, kt) {
    .Call(`_dbscan_JP_int`, nn, kt)
}

SNN_sim_int <- function(nn, jp) {
    .Call(`_dbscan_SNN_sim_int`, nn, jp)
}

ANN_cleanup <- function() {
    invisible(.Call(`_dbscan_ANN_cleanup`))
}

comps_kNN <- function(nn, mutual) {
    .Call(`_dbscan_comps_kNN`, nn, mutual)
}

comps_frNN <- function(nn, mutual) {
    .Call(`_dbscan_comps_frNN`, nn, mutual)
}

intToStr <- function(iv) {
    .Call(`_dbscan_intToStr`, iv)
}

dist_subset <- function(dist, idx) {
    .Call(`_dbscan_dist_subset`, dist, idx)
}

XOR <- function(lhs, rhs) {
    .Call(`_dbscan_XOR`, lhs, rhs)
}

dspc <- function(cl_idx, internal_nodes, all_cl_ids, mrd_dist) {
    .Call(`_dbscan_dspc`, cl_idx, internal_nodes, all_cl_ids, mrd_dist)
}

dbscan_int <- function(data, eps, minPts, weights, borderPoints, type, bucketSize, splitRule, approx, frNN) {
    .Call(`_dbscan_dbscan_int`, data, eps, minPts, weights, borderPoints, type, bucketSize, splitRule, approx, frNN)
}

reach_to_dendrogram <- function(reachability, pl_order) {
    .Call(`_dbscan_reach_to_dendrogram`, reachability, pl_order)
}

dendrogram_to_reach <- function(x) {
    .Call(`_dbscan_dendrogram_to_reach`, x)
}

mst_to_dendrogram <- function(mst) {
    .Call(`_dbscan_mst_to_dendrogram`, mst)
}

dbscan_density_int <- function(data, eps, type, bucketSize, splitRule, approx) {
    .Call(`_dbscan_dbscan_density_int`, data, eps, type, bucketSize, splitRule, approx)
}

frNN_int <- function(data, eps, type, bucketSize, splitRule, approx) {
    .Call(`_dbscan_frNN_int`, data, eps, type, bucketSize, splitRule, approx)
}

frNN_query_int <- function(data, query, eps, type, bucketSize, splitRule, approx) {
    .Call(`_dbscan_frNN_query_int`, data, query, eps, type, bucketSize, splitRule, approx)
}

distToAdjacency <- function(constraints, N) {
    .Call(`_dbscan_distToAdjacency`, constraints, N)
}

buildDendrogram <- function(hcl) {
    .Call(`_dbscan_buildDendrogram`, hcl)
}

all_children <- function(hier, key, leaves_only = FALSE) {
    .Call(`_dbscan_all_children`, hier, key, leaves_only)
}

node_xy <- function(cl_tree, cl_hierarchy, cid = 0L) {
    .Call(`_dbscan_node_xy`, cl_tree, cl_hierarchy, cid)
}

simplifiedTree <- function(cl_tree) {
    .Call(`_dbscan_simplifiedTree`, cl_tree)
}

computeStability <- function(hcl, minPts, compute_glosh = FALSE) {
    .Call(`_dbscan_computeStability`, hcl, minPts, compute_glosh)
}

validateConstraintList <- function(constraints, n) {
    .Call(`_dbscan_validateConstraintList`, constraints, n)
}

computeVirtualNode <- function(noise, constraints) {
    .Call(`_dbscan_computeVirtualNode`, noise, constraints)
}

fosc <- function(cl_tree, cid, sc, cl_hierarchy, prune_unstable_leaves = FALSE, cluster_selection_epsilon = 0.0, alpha = 0, useVirtual = FALSE, n_constraints = 0L, constraints = NULL) {
    .Call(`_dbscan_fosc`, cl_tree, cid, sc, cl_hierarchy, prune_unstable_leaves, cluster_selection_epsilon, alpha, useVirtual, n_constraints, constraints)
}

extractUnsupervised <- function(cl_tree, prune_unstable = FALSE, cluster_selection_epsilon = 0.0) {
    .Call(`_dbscan_extractUnsupervised`, cl_tree, prune_unstable, cluster_selection_epsilon)
}

extractSemiSupervised <- function(cl_tree, constraints, alpha = 0, prune_unstable_leaves = FALSE, cluster_selection_epsilon = 0.0) {
    .Call(`_dbscan_extractSemiSupervised`, cl_tree, constraints, alpha, prune_unstable_leaves, cluster_selection_epsilon)
}

kNN_query_int <- function(data, query, k, type, bucketSize, splitRule, approx) {
    .Call(`_dbscan_kNN_query_int`, data, query, k, type, bucketSize, splitRule, approx)
}

kNN_int <- function(data, k, type, bucketSize, splitRule, approx) {
    .Call(`_dbscan_kNN_int`, data, k, type, bucketSize, splitRule, approx)
}

lof_kNN <- function(data, minPts, type, bucketSize, splitRule, approx) {
    .Call(`_dbscan_lof_kNN`, data, minPts, type, bucketSize, splitRule, approx)
}

mrd <- function(dm, cd) {
    .Call(`_dbscan_mrd`, dm, cd)
}

mst <- function(x_dist, n) {
    .Call(`_dbscan_mst`, x_dist, n)
}

hclustMergeOrder <- function(mst, o) {
    .Call(`_dbscan_hclustMergeOrder`, mst, o)
}

optics_int <- function(data, eps, minPts, type, bucketSize, splitRule, approx, frNN) {
    .Call(`_dbscan_optics_int`, data, eps, minPts, type, bucketSize, splitRule, approx, frNN)
}

lowerTri <- function(m) {
    .Call(`_dbscan_lowerTri`, m)
}

