Hi Dirk, Jeff,

Thank you for your very helpful advice.  I very much appreciate it.  I think 
what I am really after is the ability to pass an Rfunction with Rcpp and not 
RInside at all.  Apologies for missing this.

Cheers,

Dan

Dr Dan Pagendam
OCE Postdoctoral Research Fellow
CSIRO Mathematics, Informatics and Statistics

Phone: +61 7 3833 5535 | Mobile: +61 4 3295 8551
Email: 
[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>
 | http://www.csiro.au
Postal Address: CSIRO Mathematics Informatics and Statistics, EcoSciences 
Precinct, PO Box 2583, Brisbane, QLD 4001
Street Address: CSIRO Mathematics Informatics and Statistics, EcoSciences 
Precinct, 41 Boggo Road, Dutton Park, QLD 4102



On 29/09/2012, at 12:38 AM, Dirk Eddelbuettel wrote:


Hi Dan,

Welcome to list.

On 28 September 2012 at 13:48, 
[email protected]<mailto:[email protected]> wrote:
| Bascially, I would like to write a cxxfunction in R using Rcpp and Inline so 
that I can execute my C++ code easily from within R.  However, I'd like my C++ 
code comprising the cxxfunction to make use of the R language too.  Is it 
possible for me to have my cxxfunction instantiate an object of class RInline 
within the C++ code?  I guess what I'm getting at is, can I get R to call on a 
C++ function which in turn calls upon R code?
|
| I've looked at plenty of examples of code that use RInline and it seems that 
they are all just based around calling on R from with C++.  This is making me 
wonder if what I am suggesting above is either plain dumb or just not possible.

The latter.

RIinside is for when you have a C++ program with 'int main(argc, argv)' to
which you want to add R.  [ I do not know how/where to make that more plain,
but it seems I need to. Suggestions welcome. ]

Rcpp is for when you want to extend R (which supplies its main() function).

The two are _very_ distinct use cases.

As Jeff P. just pointed out, you can call R functions from Rcpp code.  That
doesn't mean you should repeatedly -- there will be performance penalties.
But for the occassional initialization or conversion or ... it is perfectly.

It is also shown as part of the numerous examples that comes with Rcpp.  Rcpp
(and RInside) is pretty rich topic and there is lots of documentation. Keep
looking.  The list archives are also pretty fertile, and Google (via
rseek.org<http://rseek.org>) is surely your friend.

Dirk

--
Dirk Eddelbuettel | [email protected]<mailto:[email protected]> | 
http://dirk.eddelbuettel.com

_______________________________________________
Rcpp-devel mailing list
[email protected]
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

Reply via email to