| Type: | Package |
| Title: | 'Rcpp'-Based Helper Functions to Pass 'Int64' and 'nanotime' Values Between 'R' and 'C++' |
| Version: | 0.0.5 |
| Date: | 2024-04-30 |
| Description: | 'Int64' values can be created and accessed via the 'bit64' package and its 'integer64' class which package the 'int64' representation cleverly into a 'double'. The 'nanotime' packages builds on this to support nanosecond-resolution timestamps. This packages helps conversions between 'R' and 'C++' via several helper functions provided via a single header file. A complete example client package is included as an illustration. |
| URL: | https://github.com/eddelbuettel/rcppint64 |
| BugReports: | https://github.com/eddelbuettel/rcppint64/issues |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| Imports: | Rcpp (≥ 1.0.8) |
| LinkingTo: | Rcpp |
| Suggests: | tinytest, bit64, nanotime |
| RoxygenNote: | 6.0.1 |
| Encoding: | UTF-8 |
| NeedsCompilation: | yes |
| Packaged: | 2024-04-30 11:37:08 UTC; edd |
| Author: | Dirk Eddelbuettel |
| Maintainer: | Dirk Eddelbuettel <edd@debian.org> |
| Repository: | CRAN |
| Date/Publication: | 2024-04-30 12:22:36 UTC |
'Rcpp'-Based Helper Functions to Pass 'Int64' and 'nanotime' Values Between 'R' and 'C++'
Description
'Int64' values can be created and accessed via the 'bit64' package and its 'integer64' class which package the 'int64' representation cleverly into a 'double'. The 'nanotime' packages builds on this to support nanosecond-resolution timestamps. This packages helps conversions between 'R' and 'C++' via several helper functions provided via a single header file. A complete example client package is included as an illustration.
Package Content
Index of help topics:
Int64toInt64 Integer64 to Integer64 round-trip demo
NanotimeToNanotime nanotime to nanotime round-trip demo
RcppInt64-package 'Rcpp'-Based Helper Functions to Pass 'Int64'
and 'nanotime' Values Between 'R' and 'C++'
Maintainer
Dirk Eddelbuettel <edd@debian.org>
Author(s)
Dirk Eddelbuettel [aut, cre] (<https://orcid.org/0000-0001-6419-907X>)
Integer64 to Integer64 round-trip demo
Description
This function takes an integer64-valued input vector, converts
it to the equivalent int64_t vector in C++, displays each
element after first adding one, and returns the modified vector.
Usage
Int64toInt64(vec)
Arguments
vec |
An |
Value
A modified integer64 vector where each element
increased by one
Examples
# generate all powers of 10 fro 0 .. 18
if (requireNamespace("bit64", quietly=TRUE)) {
v <- bit64::as.integer64(10^seq(0,18))
# pass them to function which will add one to each, print and return
Int64toInt64(v)
}
nanotime to nanotime round-trip demo
Description
This function takes an nanotime-valued input vector, converts
it to the equivalent int64_t vector in C++, displays each
element after first adding one, and returns the modified vector.
Usage
NanotimeToNanotime(vec)
Arguments
vec |
A |
Value
A modified nanotime vector where each element
increased by one
Examples
# generate all powers of 10 fro 0 .. 18
if (requireNamespace("nanotime", quietly=TRUE)) {
v <- nanotime::as.nanotime(10^seq(0,18))
# pass them to function which will add one to each, print and return
NanotimeToNanotime(v)
}