R package can now be installed (compilation OK)
[valse.git] / src / adapters / a.EMGLLF.c
index 747a3c9..0df00bd 100644 (file)
@@ -1,6 +1,6 @@
 #include <R.h>
 #include <Rdefines.h>
-#include "sources/EMGLLF.h"
+#include "EMGLLF.h"
 
 SEXP EMGLLF(
        SEXP phiInit_,
@@ -17,7 +17,7 @@ SEXP EMGLLF(
 ) {
        // Get matrices dimensions
        int n = INTEGER(getAttrib(X_, R_DimSymbol))[0];
-       SEXP dim = getAttrib(phiInit_, R_DimSymbol)
+       SEXP dim = getAttrib(phiInit_, R_DimSymbol);
        int p = INTEGER(dim)[0];
        int m = INTEGER(dim)[1];
        int k = INTEGER(dim)[2];
@@ -57,13 +57,13 @@ SEXP EMGLLF(
        PROTECT(pi = allocVector(REALSXP, k));
        PROTECT(LLF = allocVector(REALSXP, maxi-mini+1));
        PROTECT(S = allocArray(REALSXP, dimPhiS));
-       double* pPhi=REAL(phi), pRho=REAL(rho), pPi=REAL(pi), pLLF=REAL(LLF), pS=REAL(S);
+       double *pPhi=REAL(phi), *pRho=REAL(rho), *pPi=REAL(pi), *pLLF=REAL(LLF), *pS=REAL(S);
 
        ////////////////////
        // Call to EMGLLF //
        ////////////////////
 
-       EMGLLF(phiInit,rhoInit,piInit,gamInit,mini,maxi,gamma,lambda,X,Y,tau,
+       EMGLLF_core(phiInit,rhoInit,piInit,gamInit,mini,maxi,gamma,lambda,X,Y,tau,
                pPhi,pRho,pPi,pLLF,pS,
                n,p,m,k);
 
@@ -75,11 +75,11 @@ SEXP EMGLLF(
        for (int i=0; i<5; i++)
                SET_STRING_ELT(listNames,i,mkChar(lnames[i]));
        setAttrib(listParams, R_NamesSymbol, listNames);
-       SET_ARRAY_ELT(listParams, 0, phi);
-       SET_ARRAY_ELT(listParams, 1, rho);
-       SET_MATRIX_ELT(listParams, 2, pi);
+       SET_VECTOR_ELT(listParams, 0, phi);
+       SET_VECTOR_ELT(listParams, 1, rho);
+       SET_VECTOR_ELT(listParams, 2, pi);
        SET_VECTOR_ELT(listParams, 3, LLF);
-       SET_ARRAY_ELT(listParams, 4, S);
+       SET_VECTOR_ELT(listParams, 4, S);
 
        UNPROTECT(9);
        return listParams;