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

add_multi_cpp <- function(seqs, k, alph) {
    .Call('_universalmotif_add_multi_cpp', PACKAGE = 'universalmotif', seqs, k, alph)
}

get_alphabet_cpp <- function(x) {
    .Call('_universalmotif_get_alphabet_cpp', PACKAGE = 'universalmotif', x)
}

calc_wins_cpp2 <- function(seqlen, window, overlap, return_incomplete_window = TRUE) {
    .Call('_universalmotif_calc_wins_cpp2', PACKAGE = 'universalmotif', seqlen, window, overlap, return_incomplete_window)
}

dust_cpp <- function(x) {
    .Call('_universalmotif_dust_cpp', PACKAGE = 'universalmotif', x)
}

trifonov_fast_cpp <- function(x, maxWordSize, alph = "") {
    .Call('_universalmotif_trifonov_fast_cpp', PACKAGE = 'universalmotif', x, maxWordSize, alph)
}

trifonov_cpp <- function(x, maxWordSize, alph = "") {
    .Call('_universalmotif_trifonov_cpp', PACKAGE = 'universalmotif', x, maxWordSize, alph)
}

wootton_federhen_fast_cpp <- function(x, alph = "") {
    .Call('_universalmotif_wootton_federhen_fast_cpp', PACKAGE = 'universalmotif', x, alph)
}

wootton_federhen_cpp <- function(x, alph = "") {
    .Call('_universalmotif_wootton_federhen_cpp', PACKAGE = 'universalmotif', x, alph)
}

slide_windows_cpp <- function(x, window, overlap, return_incomplete_window = TRUE, nthreads = 1L) {
    .Call('_universalmotif_slide_windows_cpp', PACKAGE = 'universalmotif', x, window, overlap, return_incomplete_window, nthreads)
}

sliding_complexity_cpp <- function(x, window, overlap, metric, alph = "", maxWordSize = 7L, nthreads = 1L) {
    .Call('_universalmotif_sliding_complexity_cpp', PACKAGE = 'universalmotif', x, window, overlap, metric, alph, maxWordSize, nthreads)
}

average_cpp <- function(scores, type = "a.mean") {
    .Call('_universalmotif_average_cpp', PACKAGE = 'universalmotif', scores, type)
}

compare_motifs_cpp <- function(mots, index1, index2, method, minoverlap, RC, bkg, type, relative, minic, norm, nthreads, posic, nsites, strat) {
    .Call('_universalmotif_compare_motifs_cpp', PACKAGE = 'universalmotif', mots, index1, index2, method, minoverlap, RC, bkg, type, relative, minic, norm, nthreads, posic, nsites, strat)
}

compare_motifs_all_cpp <- function(mots, method, minoverlap, RC, bkg, type, relative, minic, norm, nthreads, posic, nsites, strat) {
    .Call('_universalmotif_compare_motifs_all_cpp', PACKAGE = 'universalmotif', mots, method, minoverlap, RC, bkg, type, relative, minic, norm, nthreads, posic, nsites, strat)
}

get_comparison_matrix <- function(ans, index1, index2, method, motnames) {
    .Call('_universalmotif_get_comparison_matrix', PACKAGE = 'universalmotif', ans, index1, index2, method, motnames)
}

view_motifs_prep <- function(mots, method, RC, minoverlap, minic, posic, bkg, relative, norm, rnames, nsites, strat) {
    .Call('_universalmotif_view_motifs_prep', PACKAGE = 'universalmotif', mots, method, RC, minoverlap, minic, posic, bkg, relative, norm, rnames, nsites, strat)
}

merge_motifs_cpp <- function(mots, method, RC, minoverlap, minic, posic, bkg, relative, norm, nsites, strat) {
    .Call('_universalmotif_merge_motifs_cpp', PACKAGE = 'universalmotif', mots, method, RC, minoverlap, minic, posic, bkg, relative, norm, nsites, strat)
}

compare_columns_cpp <- function(p1, p2, b1, b2, n1 = 100, n2 = 100, m = "PCC") {
    .Call('_universalmotif_compare_columns_cpp', PACKAGE = 'universalmotif', p1, p2, b1, b2, n1, n2, m)
}

pval_extractor <- function(ncols, scores, indices1, indices2, method, subject, target, paramA, paramB, distribution, nthreads) {
    .Call('_universalmotif_pval_extractor', PACKAGE = 'universalmotif', ncols, scores, indices1, indices2, method, subject, target, paramA, paramB, distribution, nthreads)
}

count_klets_alph_cpp <- function(sequences, alph, k, nthreads) {
    .Call('_universalmotif_count_klets_alph_cpp', PACKAGE = 'universalmotif', sequences, alph, k, nthreads)
}

calc_seq_probs_cpp <- function(seqs, bkg, alph, nthreads) {
    .Call('_universalmotif_calc_seq_probs_cpp', PACKAGE = 'universalmotif', seqs, bkg, alph, nthreads)
}

peakfinder_cpp <- function(x, m = 3L) {
    .Call('_universalmotif_peakfinder_cpp', PACKAGE = 'universalmotif', x, m)
}

linbin_cpp <- function(x, gpoints) {
    .Call('_universalmotif_linbin_cpp', PACKAGE = 'universalmotif', x, gpoints)
}

motif_pvalue_cpp <- function(motifs, bkg, scores, k = 6L, nthreads = 1L, allow_nonfinite = FALSE) {
    .Call('_universalmotif_motif_pvalue_cpp', PACKAGE = 'universalmotif', motifs, bkg, scores, k, nthreads, allow_nonfinite)
}

motif_score_cpp <- function(motifs, pvals, seed = 1L, k = 6L, nthreads = 1L, randtries = 100L, allow_nonfinite = FALSE) {
    .Call('_universalmotif_motif_score_cpp', PACKAGE = 'universalmotif', motifs, pvals, seed, k, nthreads, randtries, allow_nonfinite)
}

branch_and_bound_cpp_exposed <- function(mat, score) {
    .Call('_universalmotif_branch_and_bound_cpp_exposed', PACKAGE = 'universalmotif', mat, score)
}

expand_scores <- function(scores) {
    .Call('_universalmotif_expand_scores', PACKAGE = 'universalmotif', scores)
}

paths_alph_unsort <- function(paths, alph) {
    .Call('_universalmotif_paths_alph_unsort', PACKAGE = 'universalmotif', paths, alph)
}

paths_to_alph <- function(paths, alph) {
    .Call('_universalmotif_paths_to_alph', PACKAGE = 'universalmotif', paths, alph)
}

motif_pvalue_dynamic_single_cpp <- function(mot, bkg, scores) {
    .Call('_universalmotif_motif_pvalue_dynamic_single_cpp', PACKAGE = 'universalmotif', mot, bkg, scores)
}

motif_score_dynamic_single_cpp <- function(mot, bkg, pvalues) {
    .Call('_universalmotif_motif_score_dynamic_single_cpp', PACKAGE = 'universalmotif', mot, bkg, pvalues)
}

calc_hit_gc <- function(hits, ignoreN = FALSE) {
    .Call('_universalmotif_calc_hit_gc', PACKAGE = 'universalmotif', hits, ignoreN)
}

switch_antisense_coords_cpp <- function(res) {
    .Call('_universalmotif_switch_antisense_coords_cpp', PACKAGE = 'universalmotif', res)
}

add_gap_dots_cpp <- function(seqs, gaplocs) {
    .Call('_universalmotif_add_gap_dots_cpp', PACKAGE = 'universalmotif', seqs, gaplocs)
}

scan_sequences_cpp <- function(score_mats, seq_vecs, k, alph, min_scores, nthreads, allow_nonfinite = FALSE, warnNA = TRUE) {
    .Call('_universalmotif_scan_sequences_cpp', PACKAGE = 'universalmotif', score_mats, seq_vecs, k, alph, min_scores, nthreads, allow_nonfinite, warnNA)
}

shuffle_markov_cpp <- function(sequences, k, nthreads, seed) {
    .Call('_universalmotif_shuffle_markov_cpp', PACKAGE = 'universalmotif', sequences, k, nthreads, seed)
}

shuffle_euler_cpp <- function(sequences, k, nthreads, seed) {
    .Call('_universalmotif_shuffle_euler_cpp', PACKAGE = 'universalmotif', sequences, k, nthreads, seed)
}

shuffle_seq_local_cpp <- function(sequences, k, nthreads, seed, starts, stops, method) {
    .Call('_universalmotif_shuffle_seq_local_cpp', PACKAGE = 'universalmotif', sequences, k, nthreads, seed, starts, stops, method)
}

shuffle_linear_cpp <- function(sequences, k, nthreads, seed) {
    .Call('_universalmotif_shuffle_linear_cpp', PACKAGE = 'universalmotif', sequences, k, nthreads, seed)
}

shuffle_k1_cpp <- function(sequences, nthreads, seed) {
    .Call('_universalmotif_shuffle_k1_cpp', PACKAGE = 'universalmotif', sequences, nthreads, seed)
}

count_klets_cpp <- function(sequences, k, nthreads) {
    .Call('_universalmotif_count_klets_cpp', PACKAGE = 'universalmotif', sequences, k, nthreads)
}

split_seq_by_win <- function(seq1, start, stop) {
    .Call('_universalmotif_split_seq_by_win', PACKAGE = 'universalmotif', seq1, start, stop)
}

get_klets_cpp <- function(alph, k) {
    .Call('_universalmotif_get_klets_cpp', PACKAGE = 'universalmotif', alph, k)
}

create_sequences_cpp <- function(seqlen, seqnum, alph, k, freqs, nthreads, seed, transitions) {
    .Call('_universalmotif_create_sequences_cpp', PACKAGE = 'universalmotif', seqlen, seqnum, alph, k, freqs, nthreads, seed, transitions)
}

trim_motif_internal <- function(motif, ic_scores, min_ic, trim_from) {
    .Call('_universalmotif_trim_motif_internal', PACKAGE = 'universalmotif', motif, ic_scores, min_ic, trim_from)
}

universalmotif_cpp <- function(motif, name = "new motif", altname = NA_character_, family = NA_character_, organism = NA_character_, alphabet = "DNA", type = NA_character_, icscore = as.numeric( c()), nsites = as.numeric( c()), pseudocount = 1.0, bkg = as.numeric( c()), bkgsites = as.numeric( c()), consensus = NA_character_, strand = "+-", pval = as.numeric( c()), qval = as.numeric( c()), eval = as.numeric( c()), extrainfo = NA_character_, isgapped = NA_integer_, gaploc = as.numeric( c()), mingap = as.numeric( c()), maxgap = as.numeric( c())) {
    .Call('_universalmotif_universalmotif_cpp', PACKAGE = 'universalmotif', motif, name, altname, family, organism, alphabet, type, icscore, nsites, pseudocount, bkg, bkgsites, consensus, strand, pval, qval, eval, extrainfo, isgapped, gaploc, mingap, maxgap)
}

validObject_universalmotif <- function(motif, throw_error = TRUE) {
    .Call('_universalmotif_validObject_universalmotif', PACKAGE = 'universalmotif', motif, throw_error)
}

summarise_motifs_cpp <- function(motifs) {
    .Call('_universalmotif_summarise_motifs_cpp', PACKAGE = 'universalmotif', motifs)
}

universalmotif_to_list <- function(motif) {
    .Call('_universalmotif_universalmotif_to_list', PACKAGE = 'universalmotif', motif)
}

round_motif_cpp <- function(mot, pct_tolerance) {
    .Call('_universalmotif_round_motif_cpp', PACKAGE = 'universalmotif', mot, pct_tolerance)
}

pval_str2double <- function(pval) {
    .Call('_universalmotif_pval_str2double', PACKAGE = 'universalmotif', pval)
}

split_gapped <- function(mot, gaploc) {
    .Call('_universalmotif_split_gapped', PACKAGE = 'universalmotif', mot, gaploc)
}

generate_motif <- function(ncol, bkg) {
    .Call('_universalmotif_generate_motif', PACKAGE = 'universalmotif', ncol, bkg)
}

min_max_ints <- function() {
    .Call('_universalmotif_min_max_ints', PACKAGE = 'universalmotif')
}

min_max_doubles <- function() {
    .Call('_universalmotif_min_max_doubles', PACKAGE = 'universalmotif')
}

comb2_cpp <- function(n) {
    .Call('_universalmotif_comb2_cpp', PACKAGE = 'universalmotif', n)
}

table_cpp <- function(x) {
    .Call('_universalmotif_table_cpp', PACKAGE = 'universalmotif', x)
}

order_char_cpp <- function(x) {
    .Call('_universalmotif_order_char_cpp', PACKAGE = 'universalmotif', x)
}

sort_unique_cpp <- function(x) {
    .Call('_universalmotif_sort_unique_cpp', PACKAGE = 'universalmotif', x)
}

collapse_rows_mat <- function(seqs_k) {
    .Call('_universalmotif_collapse_rows_mat', PACKAGE = 'universalmotif', seqs_k)
}

collapse_cols_mat <- function(seqs_k) {
    .Call('_universalmotif_collapse_cols_mat', PACKAGE = 'universalmotif', seqs_k)
}

collapse_rows_df <- function(seqs_k) {
    .Call('_universalmotif_collapse_rows_df', PACKAGE = 'universalmotif', seqs_k)
}

collapse_cpp <- function(x) {
    .Call('_universalmotif_collapse_cpp', PACKAGE = 'universalmotif', x)
}

print_pb <- function(out) {
    invisible(.Call('_universalmotif_print_pb', PACKAGE = 'universalmotif', out))
}

update_pb <- function(i, max, printLF = TRUE) {
    invisible(.Call('_universalmotif_update_pb', PACKAGE = 'universalmotif', i, max, printLF))
}

all_checks_collapse <- function(checks) {
    .Call('_universalmotif_all_checks_collapse', PACKAGE = 'universalmotif', checks)
}

pcm_to_ppmC <- function(pos, pseudocount = 0.0) {
    .Call('_universalmotif_pcm_to_ppmC', PACKAGE = 'universalmotif', pos, pseudocount)
}

ppm_to_pcmC <- function(pos, nsites = 0) {
    .Call('_universalmotif_ppm_to_pcmC', PACKAGE = 'universalmotif', pos, nsites)
}

ppm_to_pwmC <- function(pos, bkg, pseudocount = 0.0, nsites = 100) {
    .Call('_universalmotif_ppm_to_pwmC', PACKAGE = 'universalmotif', pos, bkg, pseudocount, nsites)
}

pwm_to_ppmC <- function(pos, bkg) {
    .Call('_universalmotif_pwm_to_ppmC', PACKAGE = 'universalmotif', pos, bkg)
}

ppm_to_icmC <- function(pos, bkg, relative_entropy = FALSE) {
    .Call('_universalmotif_ppm_to_icmC', PACKAGE = 'universalmotif', pos, bkg, relative_entropy)
}

position_icscoreC <- function(pos, bkg, type = "PPM", pseudocount = 1.0, nsites = 100.0, relative_entropy = FALSE) {
    .Call('_universalmotif_position_icscoreC', PACKAGE = 'universalmotif', pos, bkg, type, pseudocount, nsites, relative_entropy)
}

icm_to_ppmC <- function(pos) {
    .Call('_universalmotif_icm_to_ppmC', PACKAGE = 'universalmotif', pos)
}

get_consensusC <- function(pos, alphabet = "DNA", type = "PPM", pseudocount = 1.0) {
    .Call('_universalmotif_get_consensusC', PACKAGE = 'universalmotif', pos, alphabet, type, pseudocount)
}

consensus_to_ppmC <- function(letter) {
    .Call('_universalmotif_consensus_to_ppmC', PACKAGE = 'universalmotif', letter)
}

consensus_to_ppmAAC <- function(letter) {
    .Call('_universalmotif_consensus_to_ppmAAC', PACKAGE = 'universalmotif', letter)
}

get_consensusAAC <- function(pos, type = "PPM", pseudocount = 0.0) {
    .Call('_universalmotif_get_consensusAAC', PACKAGE = 'universalmotif', pos, type, pseudocount)
}

check_fun_params <- function(param_args, param_len, param_null, expected_type) {
    .Call('_universalmotif_check_fun_params', PACKAGE = 'universalmotif', param_args, param_len, param_null, expected_type)
}

