All Projects → eddelbuettel → Rinside

eddelbuettel / Rinside

Seamless embedding of R in C++ programs

Programming Languages

r
7636 projects

Projects that are alternatives of or similar to Rinside

Littler
A scripting and command-line front-end for GNU R
Stars: ✭ 238 (+112.5%)
Mutual labels:  r-package, cran, embedded
UCSCXenaShiny
📊 An R package for interactively exploring UCSC Xena https://xenabrowser.net/datapages/
Stars: ✭ 52 (-53.57%)
Mutual labels:  cran, r-package
PackageDevelopment
Task View: PackageDevelopment
Stars: ✭ 38 (-66.07%)
Mutual labels:  cran, r-package
digest
R package to create compact hash digests of R objects
Stars: ✭ 94 (-16.07%)
Mutual labels:  cran, r-package
jpndistrict
🗾 Create Japansese Administration Area Maps
Stars: ✭ 18 (-83.93%)
Mutual labels:  cran, r-package
FLightR
R package to position animals with solar geolocation archival tags
Stars: ✭ 16 (-85.71%)
Mutual labels:  cran, r-package
rcppgsl
Rcpp integration for GNU GSL vectors and matrices
Stars: ✭ 28 (-75%)
Mutual labels:  cran, r-package
worldfootballR
A wrapper for extracting world football (soccer) data from FBref, Transfermark, Understat and fotmob
Stars: ✭ 188 (+67.86%)
Mutual labels:  cran, r-package
Rcpp
Seamless R and C++ Integration
Stars: ✭ 572 (+410.71%)
Mutual labels:  r-package, cran
Configr
Implements the JSON, INI, YAML and TOML parser, for R setting and writing of configuration file.
Stars: ✭ 38 (-66.07%)
Mutual labels:  r-package, cran
Nanotime
Nanosecond Resolution Time Functionality for R
Stars: ✭ 39 (-65.18%)
Mutual labels:  r-package, cran
heddlr
Bring a functional programming mindset to R Markdown document generation
Stars: ✭ 14 (-87.5%)
Mutual labels:  cran, r-package
rprotobuf
R Interface to Protocol Buffers
Stars: ✭ 62 (-44.64%)
Mutual labels:  cran, r-package
pbapply
Adding progress bar to '*apply' functions in R
Stars: ✭ 115 (+2.68%)
Mutual labels:  cran, r-package
pkgkitten
Create simple packages which pass R CMD check
Stars: ✭ 31 (-72.32%)
Mutual labels:  cran, r-package
xfun
Miscellaneous R functions
Stars: ✭ 102 (-8.93%)
Mutual labels:  cran, r-package
Markovchain
Easy Handling Discrete Time Markov Chains
Stars: ✭ 80 (-28.57%)
Mutual labels:  r-package, cran
TDAstats
R pipeline for computing persistent homology in topological data analysis. See https://doi.org/10.21105/joss.00860 for more details.
Stars: ✭ 26 (-76.79%)
Mutual labels:  cran, r-package
inline
Inline C, C++ or Fortran functions in R
Stars: ✭ 33 (-70.54%)
Mutual labels:  cran, r-package
Dataexplorer
Automate Data Exploration and Treatment
Stars: ✭ 362 (+223.21%)
Mutual labels:  r-package, cran

RInside: Easy embedding of R inside C++ (and C)

Build Status CI License CRAN Dependencies Debian package Downloads Last Commit

About

The RInside package provides a few classes for seamless embedding of R inside of C++ applications by relying on Rcpp.

Examples

Provided with the package itself are nine subdirectories with examples: from more than a dozen basic command-line examples (in directory standard) to graphical user-interfaces (using both Qt and Wt), linear algebra with Armadillo and Eigen, parallel computing with MPI to a sandboxed server, and (since release 0.2.16) a simple (and more limited) interface for embedding insice C applications.

The simplest example (modulo its header) is examples/standard/rinside_sample0.cpp

#include <RInside.h>                    // for the embedded R via RInside

int main(int argc, char *argv[]) {

    RInside R(argc, argv);              // create an embedded R instance

    R["txt"] = "Hello, world!\n";	    // assign a char* (string) to 'txt'

    R.parseEvalQ("cat(txt)");           // eval the init string, ignoring any returns

    exit(0);
}

The Qt example directory produces this application for showing how to use R (to estimate densities) inside a C++ executable (providing the GUI):

The code is portable across operating systems. Similar, the Wt example directory contains this C++-based web application doing the same:

See Also

The RInside web page has some more details.

Authors

Dirk Eddelbuettel, Romain Francois, and Lance Bachmeier

License

GPL (>= 2)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].