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

findGroup <- function(z, groups, adj = 1L) {
    .Call(`_switchSelection_findGroup`, z, groups, adj)
}

matrixInMatrix <- function(x, y) {
    .Call(`_switchSelection_matrixInMatrix`, x, y)
}

#' Log-likelihood Function of Multivariate Ordered Probit Model
#' @description Calculates log-likelihood function of multivariate ordered
#' probit model.
#' @param par vector of parameters.
#' @param control_lnL list with some additional parameters.
#' @param out_type string representing the output type of the function.
#' @param n_sim the number of random draws for multivariate 
#' normal probabilities.
#' @param n_cores the number of cores to be used. 
#' @param regularization list of regularization parameters.
#' @export
lnL_msel <- function(par, control_lnL, out_type = "val", n_sim = 1000L, n_cores = 1L, regularization = NULL) {
    .Call(`_switchSelection_lnL_msel`, par, control_lnL, out_type, n_sim, n_cores, regularization)
}

#' Gradient of the Log-likelihood Function of Multivariate Ordered
#' Probit Model
#' @description Calculates gradient of the log-likelihood function of 
#' multivariate ordered probit model.
#' @param par vector of parameters.
#' @param control_lnL list with some additional parameters.
#' @param out_type string representing the output type of the function.
#' @param n_sim the number of random draws for multivariate 
#' normal probabilities.
#' @param n_cores the number of cores to be used. 
#' @param regularization list of regularization parameters.
#' @export
grad_msel <- function(par, control_lnL, out_type = "grad", n_sim = 1000L, n_cores = 1L, regularization = NULL) {
    .Call(`_switchSelection_grad_msel`, par, control_lnL, out_type, n_sim, n_cores, regularization)
}

