Thanks again for your help Dirk. Hope you don't mind if I ask a couple of follow up questions about as and wrap.
I have made the switch to using thread safe STL objects for use with RcppParallel and writing wrappers for R objects. I am using std vector of vectors to represent matrices and I would like to be able to convert to and from these objects to R objects. For example, it seems that there is no inbuilt conversion method from std::vector<std::vector<int>> to IntegerMatrix or vice versa (both as and wrap). Is there a reason why this conversion has not been implemented? How would I go about implementing such a conversion? Or should I be using a different STL format (e.g. a single vector) and wrap that into an R matrix? I have had a look at "Rcpp Extending" vignette but I have no idea where to start (this is beyond my current capabilities - I haven't worked with templates before). In the meantime, I have been allocating the desired object and filling it with data from the original object, but my understanding is that this is creating a copy in memory (I would like to avoid this)? [[Rcpp::export]] NumericMatrix RcppIntMatConvert (IntegerMatrix x) { // convert x to std std::vector<std::vector<int>> x_std(x.ncol(), std::vector<int>(x.nrow())); // push x into x_std for(int i = 0; i < x.ncol(); i++) { for(int j = 0; j < x.nrow(); j++) { x_std[i][j] = x(j, i); } } return x_std } Appreciate your help! Dillon ________________________________ From: Dirk Eddelbuettel <e...@debian.org> Sent: Wednesday, 18 August 2021 11:40 AM To: Dillon Hammill <dillon.hamm...@anu.edu.au> Cc: Dirk Eddelbuettel <e...@debian.org>; rcpp-devel@lists.r-forge.r-project.org <rcpp-devel@lists.r-forge.r-project.org> Subject: Re: [Rcpp-devel] Apply Defined Rcpp Functions In Parallel On 18 August 2021 at 01:26, Dillon Hammill wrote: | Thanks for your help Dirk, I think I have everything I need to get things working now. I just needed a push in the right direction to discover wrap and as from Rcpp - they are awesome! They are indeed. (And, if I may, feature prominently in the 'Introduction to Rcpp' and other documents we offer. But I acknowledge that there are lots of those.) | I am just beginning to explore the power Rcpp and PcppParallel. | | Keep up the great work! Thanks, we try :) Dirk -- https://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
_______________________________________________ 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