Dear R-developers, Using .Call I pass a S4 class with e.g. the following class definition:
setClass("mmatrix",representation( data="matrix") ) On the "C side" i do mat = GET_SLOT(vs,install("data")); and then: printf("%f\n",NUMERIC_POINTER(mat)[1]); The above print statement produces the correct output if xx<- new("mmatrix") [EMAIL PROTECTED]<-matrix(1:12+0.1,3,4). (data is double) However it prints 0.0000 if [EMAIL PROTECTED] are integers ( [EMAIL PROTECTED]<-matrix(1:12,3,4) ). Can anyone explain it to me why? I thought that NUMERIC_POINTER makes it clear that i expect datatype numeric. (Why otherwise the distinction with INTEGER_POINTER) cheers Eryk ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel