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

cpp_fcggum_block_loglik_weighted <- function(theta, par_block, response, patterns_total, patterns, weight) {
    .Call(`_ForceChoice_cpp_fcggum_block_loglik_weighted`, theta, par_block, response, patterns_total, patterns, weight)
}

cpp_fcmirt_block_loglik_weighted <- function(theta, par_block, response, patterns_total, patterns, weight) {
    .Call(`_ForceChoice_cpp_fcmirt_block_loglik_weighted`, theta, par_block, response, patterns_total, patterns, weight)
}

cpp_gibbs_mirt_theta <- function(theta_, par_, response_, theta_mu_, chol_corr_, log_diag_sum, step = 15.0, lower = -6.0, upper = 6.0) {
    .Call(`_ForceChoice_cpp_gibbs_mirt_theta`, theta_, par_, response_, theta_mu_, chol_corr_, log_diag_sum, step, lower, upper)
}

cpp_gibbs_mgpcm_theta <- function(theta_, par_, response_, length_poly_, theta_mu_, chol_corr_, log_diag_sum, step = 15.0, lower = -6.0, upper = 6.0) {
    .Call(`_ForceChoice_cpp_gibbs_mgpcm_theta`, theta_, par_, response_, length_poly_, theta_mu_, chol_corr_, log_diag_sum, step, lower, upper)
}

cpp_gibbs_mggum_theta <- function(theta_, par_, response_, length_poly_, theta_mu_, chol_corr_, log_diag_sum, step = 15.0, lower = -6.0, upper = 6.0) {
    .Call(`_ForceChoice_cpp_gibbs_mggum_theta`, theta_, par_, response_, length_poly_, theta_mu_, chol_corr_, log_diag_sum, step, lower, upper)
}

cpp_gibbs_fcmirt_theta <- function(theta_, par_, response_, theta_mu_, chol_corr_, log_diag_sum, patterns_total, patterns, step = 15.0, lower = -6.0, upper = 6.0) {
    .Call(`_ForceChoice_cpp_gibbs_fcmirt_theta`, theta_, par_, response_, theta_mu_, chol_corr_, log_diag_sum, patterns_total, patterns, step, lower, upper)
}

cpp_gibbs_fcggum_theta <- function(theta_, par_, response_, theta_mu_, chol_corr_, log_diag_sum, patterns_total, patterns, step = 15.0, lower = -6.0, upper = 6.0) {
    .Call(`_ForceChoice_cpp_gibbs_fcggum_theta`, theta_, par_, response_, theta_mu_, chol_corr_, log_diag_sum, patterns_total, patterns, step, lower, upper)
}

cpp_gibbs_tirt_theta <- function(theta_, Q_matrix_, lambda_, psi_, gamma_, Y_, obs_by_person_, Idx_item_i_, Idx_item_k_, Idx_pair_, theta_mu_, chol_corr_, log_diag_sum, step = 15.0, lower = -6.0, upper = 6.0) {
    .Call(`_ForceChoice_cpp_gibbs_tirt_theta`, theta_, Q_matrix_, lambda_, psi_, gamma_, Y_, obs_by_person_, Idx_item_i_, Idx_item_k_, Idx_pair_, theta_mu_, chol_corr_, log_diag_sum, step, lower, upper)
}

cpp_compute_EIs <- function(prob, K) {
    .Call(`_ForceChoice_cpp_compute_EIs`, prob, K)
}

cpp_moments_predicted <- function(prob, pi, pairs_total, is_poly, K) {
    .Call(`_ForceChoice_cpp_moments_predicted`, prob, pi, pairs_total, is_poly, K)
}

cpp_moments_predicted_grouped <- function(prob, pi, pairs_total, is_poly, K, group) {
    .Call(`_ForceChoice_cpp_moments_predicted_grouped`, prob, pi, pairs_total, is_poly, K, group)
}

cpp_compute_Xi <- function(EIs, EIs2, pi, pairs_total) {
    .Call(`_ForceChoice_cpp_compute_Xi`, EIs, EIs2, pi, pairs_total)
}

cpp_compute_Xi_grouped <- function(EIs, EIs2, pi, pairs_total, group) {
    .Call(`_ForceChoice_cpp_compute_Xi_grouped`, EIs, EIs2, pi, pairs_total, group)
}

cpp_compute_E2 <- function(EIs, EIs2, pi) {
    .Call(`_ForceChoice_cpp_compute_E2`, EIs, EIs2, pi)
}

cpp_compute_E2_grouped <- function(EIs, EIs2, pi, group) {
    .Call(`_ForceChoice_cpp_compute_E2_grouped`, EIs, EIs2, pi, group)
}

cpp_make_pairs <- function(n) {
    .Call(`_ForceChoice_cpp_make_pairs`, n)
}

cpp_filter_pairs_between_groups <- function(pairs_total, group) {
    .Call(`_ForceChoice_cpp_filter_pairs_between_groups`, pairs_total, group)
}

cpp_gof_observed_summary <- function(response, pairs_total) {
    .Call(`_ForceChoice_cpp_gof_observed_summary`, response, pairs_total)
}

cpp_gof_null_loglik <- function(response, K, response_type, nominal_groups, first_moments) {
    .Call(`_ForceChoice_cpp_gof_null_loglik`, response, K, response_type, nominal_groups, first_moments)
}

cpp_mirt_item_loglik_weighted <- function(theta, a, b, c, upper, response, weight) {
    .Call(`_ForceChoice_cpp_mirt_item_loglik_weighted`, theta, a, b, c, upper, response, weight)
}

cpp_mgpcm_item_loglik_weighted <- function(theta, a, d, response, weight) {
    .Call(`_ForceChoice_cpp_mgpcm_item_loglik_weighted`, theta, a, d, response, weight)
}

cpp_mggum_item_loglik_weighted <- function(theta, par_i, Ki, response, weight) {
    .Call(`_ForceChoice_cpp_mggum_item_loglik_weighted`, theta, par_i, Ki, response, weight)
}

cpp_tirt_item_loglik_weighted <- function(qt_target, qt_other, lambda_other, psi_other, gamma_pair, target_is_first, Y, weight, lambda_val, psi_val) {
    .Call(`_ForceChoice_cpp_tirt_item_loglik_weighted`, qt_target, qt_other, lambda_other, psi_other, gamma_pair, target_is_first, Y, weight, lambda_val, psi_val)
}

cpp_tirt_pair_loglik_weighted <- function(mu_no_gamma, denom, Y, weight, gamma_val) {
    .Call(`_ForceChoice_cpp_tirt_pair_loglik_weighted`, mu_no_gamma, denom, Y, weight, gamma_val)
}

cpp_model_MIRT <- function(theta, par) {
    .Call(`_ForceChoice_cpp_model_MIRT`, theta, par)
}

cpp_model_MGGUM <- function(theta, par) {
    .Call(`_ForceChoice_cpp_model_MGGUM`, theta, par)
}

cpp_model_MGPCM <- function(theta, par) {
    .Call(`_ForceChoice_cpp_model_MGPCM`, theta, par)
}

cpp_model_FCGGUM <- function(theta, par, patterns_total, patterns) {
    .Call(`_ForceChoice_cpp_model_FCGGUM`, theta, par, patterns_total, patterns)
}

cpp_model_FCMIRT <- function(theta, par, patterns_total, patterns) {
    .Call(`_ForceChoice_cpp_model_FCMIRT`, theta, par, patterns_total, patterns)
}

cpp_model_FCDCM <- function(zeta, par, patterns) {
    .Call(`_ForceChoice_cpp_model_FCDCM`, zeta, par, patterns)
}

cpp_model_FCDCM_marginal <- function(theta, delta1, delta0, par, alpha_patterns, zeta_patterns, patterns) {
    .Call(`_ForceChoice_cpp_model_FCDCM_marginal`, theta, delta1, delta0, par, alpha_patterns, zeta_patterns, patterns)
}

cpp_fcdcm_case_loglik_class_prob <- function(theta, response, delta1, delta0, alpha_patterns, class_prob) {
    .Call(`_ForceChoice_cpp_fcdcm_case_loglik_class_prob`, theta, response, delta1, delta0, alpha_patterns, class_prob)
}

cpp_gibbs_fcdcm_theta <- function(theta, response, delta1, delta0, par, alpha_patterns, zeta_patterns, patterns, step, lower, upper) {
    .Call(`_ForceChoice_cpp_gibbs_fcdcm_theta`, theta, response, delta1, delta0, par, alpha_patterns, zeta_patterns, patterns, step, lower, upper)
}

cpp_fcdcm_sample_alpha <- function(theta, response, delta1, delta0, alpha_patterns, zeta_patterns, class_prob) {
    .Call(`_ForceChoice_cpp_fcdcm_sample_alpha`, theta, response, delta1, delta0, alpha_patterns, zeta_patterns, class_prob)
}

cpp_fcdcm_posterior_alpha_class_prob <- function(theta, response, delta1, delta0, alpha_patterns, class_prob) {
    .Call(`_ForceChoice_cpp_fcdcm_posterior_alpha_class_prob`, theta, response, delta1, delta0, alpha_patterns, class_prob)
}

cpp_fcdcm_latent_support <- function(theta, pi, delta1, delta0, par, alpha_patterns, zeta_patterns, patterns) {
    .Call(`_ForceChoice_cpp_fcdcm_latent_support`, theta, pi, delta1, delta0, par, alpha_patterns, zeta_patterns, patterns)
}

cpp_model_FCGDINA <- function(alpha_pat, flat_design, design_rows, design_cols, design_offset, delta_offset, delta, class_map_list, patterns_total, patterns, C, I_states) {
    .Call(`_ForceChoice_cpp_model_FCGDINA`, alpha_pat, flat_design, design_rows, design_cols, design_offset, delta_offset, delta, class_map_list, patterns_total, patterns, C, I_states)
}

cpp_fcgdina_class_posterior <- function(prob_class, response, patterns, prior, N, B, C) {
    .Call(`_ForceChoice_cpp_fcgdina_class_posterior`, prob_class, response, patterns, prior, N, B, C)
}

cpp_fcgdina_weighted_loglik <- function(prob_class, response, patterns, class_weight, N, B, C) {
    .Call(`_ForceChoice_cpp_fcgdina_weighted_loglik`, prob_class, response, patterns, class_weight, N, B, C)
}

cpp_fcgdina_weighted_loglik_block <- function(prob_block, response_block, class_weight, N, C) {
    .Call(`_ForceChoice_cpp_fcgdina_weighted_loglik_block`, prob_block, response_block, class_weight, N, C)
}

cpp_fcgdina_marginal_loglik <- function(prob_class, response, patterns, prior, N, B, C) {
    .Call(`_ForceChoice_cpp_fcgdina_marginal_loglik`, prob_class, response, patterns, prior, N, B, C)
}

cpp_fcgdina_delta_logit_to_prob <- function(delta_logit, flat_design, design_rows, design_cols, design_offset, delta_offset, I_states) {
    .Call(`_ForceChoice_cpp_fcgdina_delta_logit_to_prob`, delta_logit, flat_design, design_rows, design_cols, design_offset, delta_offset, I_states)
}

cpp_get_permutations <- function(values, r) {
    .Call(`_ForceChoice_cpp_get_permutations`, values, r)
}

cpp_istem_local_patterns <- function(patterns, items) {
    .Call(`_ForceChoice_cpp_istem_local_patterns`, patterns, items)
}

cpp_istem_batch_var <- function(plist, n) {
    .Call(`_ForceChoice_cpp_istem_batch_var`, plist, n)
}

cpp_extract_rhat_matrix <- function(rhat, row_names, param_name, nrow_out, ncol_out) {
    .Call(`_ForceChoice_cpp_extract_rhat_matrix`, rhat, row_names, param_name, nrow_out, ncol_out)
}

cpp_istem_log_mvn_kernel <- function(x, mu, chol_sigma, log_diag_sum) {
    .Call(`_ForceChoice_cpp_istem_log_mvn_kernel`, x, mu, chol_sigma, log_diag_sum)
}

cpp_data_from_response_block <- function(response, patterns) {
    .Call(`_ForceChoice_cpp_data_from_response_block`, response, patterns)
}

cpp_response_from_data_block <- function(data, patterns) {
    .Call(`_ForceChoice_cpp_response_from_data_block`, data, patterns)
}

cpp_get_block_items_from_data <- function(data) {
    .Call(`_ForceChoice_cpp_get_block_items_from_data`, data)
}

cpp_get_block_items_fcdcm <- function(data) {
    .Call(`_ForceChoice_cpp_get_block_items_fcdcm`, data)
}

cpp_loglik_binary <- function(prob, response, pi) {
    .Call(`_ForceChoice_cpp_loglik_binary`, prob, response, pi)
}

cpp_loglik_indexed <- function(prob, response, pi, block_sizes, response_base = 0L) {
    .Call(`_ForceChoice_cpp_loglik_indexed`, prob, response, pi, block_sizes, response_base)
}

cpp_tirt_expand_response_full <- function(response, pairs_matrix, pairs_value, block_pair_counts) {
    .Call(`_ForceChoice_cpp_tirt_expand_response_full`, response, pairs_matrix, pairs_value, block_pair_counts)
}

cpp_loglik_binary_person_pairs <- function(prob, response, pi, pairs_matrix, pairs_value, block_pair_counts) {
    .Call(`_ForceChoice_cpp_loglik_binary_person_pairs`, prob, response, pi, pairs_matrix, pairs_value, block_pair_counts)
}

cpp_get_response_from_data_tirt <- function(data, block_items, fc_type) {
    .Call(`_ForceChoice_cpp_get_response_from_data_tirt`, data, block_items, fc_type)
}

cpp_get_data_from_response_tirt <- function(response, block_items, fc_type, pairs_value) {
    .Call(`_ForceChoice_cpp_get_data_from_response_tirt`, response, block_items, fc_type, pairs_value)
}

cpp_extract_rhat_vector <- function(rhat, row_names, param_name, n_out) {
    .Call(`_ForceChoice_cpp_extract_rhat_vector`, rhat, row_names, param_name, n_out)
}

cpp_check_response <- function(response, length_poly) {
    .Call(`_ForceChoice_cpp_check_response`, response, length_poly)
}

