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

#include <Rcpp.h>

using namespace Rcpp;

#ifdef RCPP_USE_GLOBAL_ROSTREAM
Rcpp::Rostream<true>&  Rcpp::Rcout = Rcpp::Rcpp_cout_get();
Rcpp::Rostream<false>& Rcpp::Rcerr = Rcpp::Rcpp_cerr_get();
#endif

// autotune_lasso_cpp
List autotune_lasso_cpp(SEXP xin, SEXP yin, float alpha, bool standardize, bool standardize_response, bool intercept, bool active, bool trace_it, double tolerance, double beta_tolerance, short int iter_max, short int beta_iter_max, short int active_iter_max, bool PR_norm_l2, double tau);
RcppExport SEXP _autotune_autotune_lasso_cpp(SEXP xinSEXP, SEXP yinSEXP, SEXP alphaSEXP, SEXP standardizeSEXP, SEXP standardize_responseSEXP, SEXP interceptSEXP, SEXP activeSEXP, SEXP trace_itSEXP, SEXP toleranceSEXP, SEXP beta_toleranceSEXP, SEXP iter_maxSEXP, SEXP beta_iter_maxSEXP, SEXP active_iter_maxSEXP, SEXP PR_norm_l2SEXP, SEXP tauSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type xin(xinSEXP);
    Rcpp::traits::input_parameter< SEXP >::type yin(yinSEXP);
    Rcpp::traits::input_parameter< float >::type alpha(alphaSEXP);
    Rcpp::traits::input_parameter< bool >::type standardize(standardizeSEXP);
    Rcpp::traits::input_parameter< bool >::type standardize_response(standardize_responseSEXP);
    Rcpp::traits::input_parameter< bool >::type intercept(interceptSEXP);
    Rcpp::traits::input_parameter< bool >::type active(activeSEXP);
    Rcpp::traits::input_parameter< bool >::type trace_it(trace_itSEXP);
    Rcpp::traits::input_parameter< double >::type tolerance(toleranceSEXP);
    Rcpp::traits::input_parameter< double >::type beta_tolerance(beta_toleranceSEXP);
    Rcpp::traits::input_parameter< short int >::type iter_max(iter_maxSEXP);
    Rcpp::traits::input_parameter< short int >::type beta_iter_max(beta_iter_maxSEXP);
    Rcpp::traits::input_parameter< short int >::type active_iter_max(active_iter_maxSEXP);
    Rcpp::traits::input_parameter< bool >::type PR_norm_l2(PR_norm_l2SEXP);
    Rcpp::traits::input_parameter< double >::type tau(tauSEXP);
    rcpp_result_gen = Rcpp::wrap(autotune_lasso_cpp(xin, yin, alpha, standardize, standardize_response, intercept, active, trace_it, tolerance, beta_tolerance, iter_max, beta_iter_max, active_iter_max, PR_norm_l2, tau));
    return rcpp_result_gen;
END_RCPP
}

static const R_CallMethodDef CallEntries[] = {
    {"_autotune_autotune_lasso_cpp", (DL_FUNC) &_autotune_autotune_lasso_cpp, 15},
    {NULL, NULL, 0}
};

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