I am trying to register my native routines as recommended by BiocCheck. I
followed the instructions in "Writing R Extensions" and have implemented
the following code in "init.cpp". However, the routines are still not
registered.

#include <Rinternals.h>
#include <R_ext/Rdynload.h>
#include "R_interface.h"  // contains univariate_hmm, multivariate_hmm, etc.

static const R_CMethodDef CEntries[]  = {
    {"univariate_hmm", (DL_FUNC) &univariate_hmm, 24,
(R_NativePrimitiveArgType[24]) {INTSXP, INTSXP, INTSXP, INTSXP, REALSXP,
REALSXP, INTSXP, INTSXP, REALSXP, INTSXP, REALSXP, REALSXP, REALSXP,
REALSXP, INTSXP, REALSXP, REALSXP, REALSXP, REALSXP, LGLSXP, INTSXP,
INTSXP, INTSXP, INTSXP}},
    {"multivariate_hmm", (DL_FUNC) &multivariate_hmm, 18,
(R_NativePrimitiveArgType[18]) {REALSXP, INTSXP, INTSXP, INTSXP, INTSXP,
INTSXP, INTSXP, REALSXP, INTSXP, REALSXP, REALSXP, REALSXP, REALSXP,
REALSXP, LGLSXP, INTSXP, INTSXP, INTSXP}},
    {"univariate_cleanup", (DL_FUNC) &univariate_cleanup, 0, NULL},
    {"multivariate_cleanup", (DL_FUNC) &multivariate_cleanup, 1,
(R_NativePrimitiveArgType[1]) {INTSXP}},
    {NULL, NULL, 0, NULL}
};

void R_init_AneuFinder(DllInfo *dll)
{
    R_registerRoutines(dll, CEntries, NULL, NULL, NULL);
    R_useDynamicSymbols(dll, FALSE);
}

My NAMESPACE contains
useDynLib(AneuFinder, .registration = TRUE)

I don't see what's missing here, because the routines are still not
registered. I appreciate any help.

        [[alternative HTML version deleted]]

_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel

Reply via email to