phylopomp
Phylodynamics for POMPs
Loading...
Searching...
No Matches
init.c
Go to the documentation of this file.
1#include "init.h"
2#include "decls.h"
3#include "pomplink.h"
4
5get_userdata_t *get_userdata;
6get_userdata_double_t *get_userdata_double;
7get_userdata_int_t *get_userdata_int;
8
9SEXP parse_newick (SEXP, SEXP, SEXP);
10SEXP getInfo (SEXP);
11SEXP curtail (SEXP, SEXP, SEXP);
12SEXP yaml (SEXP);
13SEXP gendat (SEXP);
14
15// for each model, there must be
16// one DECLARATIONS line and one METHODS line.
17
25DECLARATIONS(Strains);
26DECLARATIONS(TwoSpecies);
27DECLARATIONS(TwoUndead);
28
29static const R_CallMethodDef callMethods[] = {
30 METHODS(LBDP),
31 METHODS(Moran),
32 METHODS(S2I2R2),
33 METHODS(SEIR),
34 METHODS(SI2R),
35 METHODS(SIIR),
36 METHODS(SIR),
37 METHODS(Strains),
38 METHODS(TwoSpecies),
39 METHODS(TwoUndead),
40 {"parse_newick", (DL_FUNC) &parse_newick, 3},
41 {"curtail", (DL_FUNC) &curtail, 3},
42 {"yaml", (DL_FUNC) &yaml, 1},
43 {"gendat", (DL_FUNC) &gendat, 1},
44 {NULL, NULL, 0}
45};
46
47static const R_CallMethodDef extMethods[] = {
48 {"getInfo", (DL_FUNC) &getInfo, -1},
49 {NULL, NULL, 0}
50};
51
52void R_init_phylopomp (DllInfo *info) {
53 // Register routines
54 R_registerRoutines(info,NULL,callMethods,NULL,extMethods);
55 R_useDynamicSymbols(info,TRUE);
56 // R_useDynamicSymbols(info,FALSE);
57 // R_forceSymbols(info,TRUE);
58 get_userdata = (get_userdata_t*) R_GetCCallable("pomp","get_userdata");
59 get_userdata_double = (get_userdata_double_t*) R_GetCCallable("pomp","get_userdata_double");
60 get_userdata_int = (get_userdata_int_t*) R_GetCCallable("pomp","get_userdata_int");
61}
SEXP curtail(SEXP State, SEXP Time, SEXP Troot)
curtail the given genealogy
Definition bare.cc:10
SEXP yaml(SEXP State)
extract a YAML description
Definition bare.cc:26
SEXP gendat(SEXP State)
data-frame format
Definition bare.cc:32
SEXP getInfo(SEXP args)
Definition getinfo.cc:19
SEXP curtail(SEXP, SEXP, SEXP)
curtail the given genealogy
Definition bare.cc:10
void R_init_phylopomp(DllInfo *info)
Definition init.c:52
SEXP gendat(SEXP)
data-frame format
Definition bare.cc:32
static const R_CallMethodDef extMethods[]
Definition init.c:47
SEXP parse_newick(SEXP, SEXP, SEXP)
Definition parse.cc:10
get_userdata_int_t * get_userdata_int
Definition init.c:7
SEXP getInfo(SEXP)
Definition getinfo.cc:19
static const R_CallMethodDef callMethods[]
Definition init.c:29
get_userdata_t * get_userdata
Definition init.c:5
get_userdata_double_t * get_userdata_double
Definition init.c:6
SEXP yaml(SEXP)
extract a YAML description
Definition bare.cc:26
#define METHODS(X)
Definition init.h:14
#define DECLARATIONS(X)
Definition init.h:7