// 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
// fill_missing_vals_and_ratio
void fill_missing_vals_and_ratio(const NumericMatrix& feature_mat, LogicalMatrix& missing_vals, NumericVector& ratio_missing_vals, double missing_value);
RcppExport SEXP _vsclust_fill_missing_vals_and_ratio(SEXP feature_matSEXP, SEXP missing_valsSEXP, SEXP ratio_missing_valsSEXP, SEXP missing_valueSEXP) {
BEGIN_RCPP
Rcpp::RNGScope rcpp_rngScope_gen;
Rcpp::traits::input_parameter< const NumericMatrix& >::type feature_mat(feature_matSEXP);
Rcpp::traits::input_parameter< LogicalMatrix& >::type missing_vals(missing_valsSEXP);
Rcpp::traits::input_parameter< NumericVector& >::type ratio_missing_vals(ratio_missing_valsSEXP);
Rcpp::traits::input_parameter< double >::type missing_value(missing_valueSEXP);
fill_missing_vals_and_ratio(feature_mat, missing_vals, ratio_missing_vals, missing_value);
return R_NilValue;
END_RCPP
}
// c_plusplus_means
double c_plusplus_means(const NumericMatrix& feature_mat, NumericMatrix& centers, NumericVector& weight, NumericVector& fuzz, int dist_metric, int iter_max, double rel_tol, int verbose, NumericMatrix& membership_mat, double ermin, IntegerVector& iter, double missing_value, double weight_missing);
RcppExport SEXP _vsclust_c_plusplus_means(SEXP feature_matSEXP, SEXP centersSEXP, SEXP weightSEXP, SEXP fuzzSEXP, SEXP dist_metricSEXP, SEXP iter_maxSEXP, SEXP rel_tolSEXP, SEXP verboseSEXP, SEXP membership_matSEXP, SEXP erminSEXP, SEXP iterSEXP, SEXP missing_valueSEXP, SEXP weight_missingSEXP) {
BEGIN_RCPP
Rcpp::RObject rcpp_result_gen;
Rcpp::RNGScope rcpp_rngScope_gen;
Rcpp::traits::input_parameter< const NumericMatrix& >::type feature_mat(feature_matSEXP);
Rcpp::traits::input_parameter< NumericMatrix& >::type centers(centersSEXP);
Rcpp::traits::input_parameter< NumericVector& >::type weight(weightSEXP);
Rcpp::traits::input_parameter< NumericVector& >::type fuzz(fuzzSEXP);
Rcpp::traits::input_parameter< int >::type dist_metric(dist_metricSEXP);
Rcpp::traits::input_parameter< int >::type iter_max(iter_maxSEXP);
Rcpp::traits::input_parameter< double >::type rel_tol(rel_tolSEXP);
Rcpp::traits::input_parameter< int >::type verbose(verboseSEXP);
Rcpp::traits::input_parameter< NumericMatrix& >::type membership_mat(membership_matSEXP);
Rcpp::traits::input_parameter< double >::type ermin(erminSEXP);
Rcpp::traits::input_parameter< IntegerVector& >::type iter(iterSEXP);
Rcpp::traits::input_parameter< double >::type missing_value(missing_valueSEXP);
Rcpp::traits::input_parameter< double >::type weight_missing(weight_missingSEXP);
rcpp_result_gen = Rcpp::wrap(c_plusplus_means(feature_mat, centers, weight, fuzz, dist_metric, iter_max, rel_tol, verbose, membership_mat, ermin, iter, missing_value, weight_missing));
return rcpp_result_gen;
END_RCPP
}
static const R_CallMethodDef CallEntries[] = {
{"_vsclust_fill_missing_vals_and_ratio", (DL_FUNC) &_vsclust_fill_missing_vals_and_ratio, 4},
{"_vsclust_c_plusplus_means", (DL_FUNC) &_vsclust_c_plusplus_means, 13},
{NULL, NULL, 0}
};
RcppExport void R_init_vsclust(DllInfo *dll) {
R_registerRoutines(dll, NULL, CallEntries, NULL, NULL);
R_useDynamicSymbols(dll, FALSE);
}