From b9a48fb62777153a15824c317eb4e654882fcc4c Mon Sep 17 00:00:00 2001 From: Rich FitzJohn Date: Wed, 15 May 2024 14:03:11 +0100 Subject: [PATCH] Fix after merge --- R/cpp11.R | 4 ++-- src/cpp11.cpp | 8 ++++---- src/sir.cpp | 4 ++-- tests/testthat/test-sir.R | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/R/cpp11.R b/R/cpp11.R index b560d308..b12b1dbc 100644 --- a/R/cpp11.R +++ b/R/cpp11.R @@ -20,8 +20,8 @@ dust2_cpu_sir_set_state_initial <- function(ptr) { .Call(`_dust2_dust2_cpu_sir_set_state_initial`, ptr) } -dust2_cpu_sir_set_state <- function(ptr, r_state) { - .Call(`_dust2_dust2_cpu_sir_set_state`, ptr, r_state) +dust2_cpu_sir_set_state <- function(ptr, r_state, grouped) { + .Call(`_dust2_dust2_cpu_sir_set_state`, ptr, r_state, grouped) } dust2_cpu_sir_rng_state <- function(ptr) { diff --git a/src/cpp11.cpp b/src/cpp11.cpp index 7b9f08f2..881b0ffa 100644 --- a/src/cpp11.cpp +++ b/src/cpp11.cpp @@ -41,10 +41,10 @@ extern "C" SEXP _dust2_dust2_cpu_sir_set_state_initial(SEXP ptr) { END_CPP11 } // sir.cpp -SEXP dust2_cpu_sir_set_state(cpp11::sexp ptr, cpp11::sexp r_state); -extern "C" SEXP _dust2_dust2_cpu_sir_set_state(SEXP ptr, SEXP r_state) { +SEXP dust2_cpu_sir_set_state(cpp11::sexp ptr, cpp11::sexp r_state, bool grouped); +extern "C" SEXP _dust2_dust2_cpu_sir_set_state(SEXP ptr, SEXP r_state, SEXP grouped) { BEGIN_CPP11 - return cpp11::as_sexp(dust2_cpu_sir_set_state(cpp11::as_cpp>(ptr), cpp11::as_cpp>(r_state))); + return cpp11::as_sexp(dust2_cpu_sir_set_state(cpp11::as_cpp>(ptr), cpp11::as_cpp>(r_state), cpp11::as_cpp>(grouped))); END_CPP11 } // sir.cpp @@ -131,7 +131,7 @@ static const R_CallMethodDef CallEntries[] = { {"_dust2_dust2_cpu_sir_compare_data", (DL_FUNC) &_dust2_dust2_cpu_sir_compare_data, 3}, {"_dust2_dust2_cpu_sir_rng_state", (DL_FUNC) &_dust2_dust2_cpu_sir_rng_state, 1}, {"_dust2_dust2_cpu_sir_run_steps", (DL_FUNC) &_dust2_dust2_cpu_sir_run_steps, 2}, - {"_dust2_dust2_cpu_sir_set_state", (DL_FUNC) &_dust2_dust2_cpu_sir_set_state, 2}, + {"_dust2_dust2_cpu_sir_set_state", (DL_FUNC) &_dust2_dust2_cpu_sir_set_state, 3}, {"_dust2_dust2_cpu_sir_set_state_initial", (DL_FUNC) &_dust2_dust2_cpu_sir_set_state_initial, 1}, {"_dust2_dust2_cpu_sir_state", (DL_FUNC) &_dust2_dust2_cpu_sir_state, 2}, {"_dust2_dust2_cpu_sir_time", (DL_FUNC) &_dust2_dust2_cpu_sir_time, 1}, diff --git a/src/sir.cpp b/src/sir.cpp index c5c65886..2d8a1746 100644 --- a/src/sir.cpp +++ b/src/sir.cpp @@ -41,8 +41,8 @@ SEXP dust2_cpu_sir_set_state_initial(cpp11::sexp ptr) { } [[cpp11::register]] -SEXP dust2_cpu_sir_set_state(cpp11::sexp ptr, cpp11::sexp r_state) { - return dust2::r::dust2_cpu_set_state(ptr, r_state); +SEXP dust2_cpu_sir_set_state(cpp11::sexp ptr, cpp11::sexp r_state, bool grouped) { + return dust2::r::dust2_cpu_set_state(ptr, r_state, grouped); } [[cpp11::register]] diff --git a/tests/testthat/test-sir.R b/tests/testthat/test-sir.R index 53388fc7..c691be86 100644 --- a/tests/testthat/test-sir.R +++ b/tests/testthat/test-sir.R @@ -30,7 +30,7 @@ test_that("can compare to data", { ptr <- obj[[1]] s <- rbind(0, 0, 0, 0, rpois(10, 30)) - dust2_cpu_sir_set_state(ptr, s) + dust2_cpu_sir_set_state(ptr, s, FALSE) d <- list(incidence = 30) r <- mcstate2::mcstate_rng$new(seed = 42, n_streams = 10) @@ -48,7 +48,7 @@ test_that("can compare to data when missing", { ptr <- obj[[1]] s <- rbind(0, 0, 0, 0, rpois(10, 30)) - dust2_cpu_sir_set_state(ptr, s) + dust2_cpu_sir_set_state(ptr, s, FALSE) d <- list(incidence = NA_real_) r <- mcstate2::mcstate_rng$new(seed = 42, n_streams = 10) @@ -68,7 +68,7 @@ test_that("can compare against multple parameter groups at once", { s <- dust2_cpu_sir_state(ptr, TRUE) s[5, , ] <- rpois(10, 30) - dust2_cpu_sir_set_state(ptr, s) + dust2_cpu_sir_set_state(ptr, s, TRUE) d <- lapply(1:4, function(i) list(incidence = 30 + i)) res <- dust2_cpu_sir_compare_data(ptr, d, TRUE)