Hello,
It looks like you want to use Rcpp modules. See the "Rcpp-modules" vignette.
> require( Rcpp )
> vignette( "Rcpp-modules" )
Or from CRAN:
http://cran.r-project.org/web/packages/Rcpp/vignettes/Rcpp-modules.pdf
Modules are still in (slow) dev, so they lack some features, but what
exists already might answer your needs.
Romain
Le 10/10/11 12:09, Simon Fuller a écrit :
Hello,
I have just joined the mailing list.
I was hoping you might be able to help me with a question.
I am new to Rcpp, have some experience with both R and C++, but very
little experience with integrating languages.
I hope to use Rcpp to develop code over the next few years. However,
to begin with, I have some preexisting C++ classes that I would like
to make available to R.
I have read the documentation that I can find, but I do not know which
is the best approach to take.
I only, in principle, need /one method/ to interact with the classes -
there then follows a fairly arduous process using different tree
structures each of which have aggregate classes, but only a single
double needs to be returned to R.
I was therefore hoping to simply call a C++ wrapper function in-line,
remotely, which in turn called my classes, but that does not work. I
get an:
"expected unqualified-id before 'extern' " error after my includes,
at: RcppExport SEXP.. at the start of my method declaration. (I can
post code if this approach is not a complete dead end)
So my two questions are: is there a quick way of prototyping this?
i.e. to get R to invoke my classes through an rcpp intermediary.
If there is not a quick way to do this, what is the best approach? Do
I need to, and if so how do I, make my classes accessible to Rcpp.
Because my whole hope here is to use preexisting code as swiftly as
possible, 'easiest' and 'quickest' are almost synonyms for 'best' in
my question.
If someone could point me in the direction of some example code where
Rcpp invokes user classes this would be great.
My apologies if my question has been covered before, but I would
really appreciate some advice on what is and is not possible, and some
strategic advice on the best (easiest and quickest) approach.
Thank you for your help. It is deeply appreciated.
Simon
_______________________________________________
Rcpp-devel mailing list
Rcpp-devel@lists.r-forge.r-project.org
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
--
Romain Francois
Professional R Enthusiast
http://romainfrancois.blog.free.fr
_______________________________________________
Rcpp-devel mailing list
Rcpp-devel@lists.r-forge.r-project.org
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel