accesing slots of S4 class in C code
I am trying to use a custom S4 object in my C code and I cannot get the
access to its slots working.
The following is a toy example, but even this crashes.
In R I have:
setClass("pd", representation(data="numeric"))
x <- new("pd", data=1:5)
test <- function(pd.obj) {
res <- .C("TestFun", pd.obj)
.Call("TestFun", pd.obj)
should work.
Torsten
res}
test(x)
(Of couse I load the DLL as well.)
The corresponding C file has:
SEXP TestFun(SEXP pd_obj)
{
SEXP t=R_NilValue;
PROTECT(t = GET_SLOT(pd_obj, install("data")));
UNPROTECT(1);
return(t);
}
What I hope to get as a result is the (1:5) vector.
In the long term, the vector will be a multi-dimensional array and I
will want to do calculations using its contents in the C program.
Thanks for any help,
Aniko
Huntsman Cancer Institute wishes to promote open communication while protecting confidential and/or privileged information. If you have received this message in error, please inform the sender and delete all copies.
[[alternative HTML version deleted]]
______________________________________________ R-help at stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html