summaryrefslogtreecommitdiffstats
path: root/src/init.c
blob: 77417f6342fe6277a2b8b83b746c670433970982 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <stdlib.h> // for NULL
#include <R_ext/Rdynload.h>

/* FIXME:
   Check these declarations against the C/Fortran source code.
*/

/* .C calls */
extern void BCloss_recov_dist(void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *);
extern void BCloss_recov_trunc(void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *);
extern void exp_trunc(void *, void *, void *, void *, void *, void *, void *);
extern void fitprob(void *, void *, void *, void *, void *, void *);
extern void GHquad(void *, void *, void *);
extern void lossdistrib(void *, void *, void *, void *, void *, void *, void *, void *);
extern void lossdistrib_joint(void *, void *, void *, void *, void *, void *, void *, void *);
extern void lossdistrib_joint_Z(void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *, void *);
extern void lossdistrib_Z(void *, void *, void *, void *, void *, void *, void *, void *, void *, void *);
extern void recovdist(void *, void *, void *, void *, void *, void *, void *);
extern void stochasticrecov(void *, void *, void *, void *, void *, void *, void *, void *, void *);

static const R_CMethodDef CEntries[] = {
    {"BCloss_recov_dist",     (DL_FUNC) &BCloss_recov_dist,     13},
    {"BCloss_recov_trunc",    (DL_FUNC) &BCloss_recov_trunc,    14},
    {"exp_trunc",             (DL_FUNC) &exp_trunc,              7},
    {"fitprob",               (DL_FUNC) &fitprob,                6},
    {"GHquad",                (DL_FUNC) &GHquad,                 3},
    {"lossdistrib",           (DL_FUNC) &lossdistrib,            8},
    {"lossdistrib_joint",     (DL_FUNC) &lossdistrib_joint,      8},
    {"lossdistrib_joint_Z",   (DL_FUNC) &lossdistrib_joint_Z,   12},
    {"lossdistrib_Z",         (DL_FUNC) &lossdistrib_Z,         10},
    {"recovdist",             (DL_FUNC) &recovdist,              7},
    {"stochasticrecov",       (DL_FUNC) &stochasticrecov,        9},
    {NULL, NULL, 0}
};

void R_init_lossdistrib(DllInfo *dll)
{
    R_registerRoutines(dll, CEntries, NULL, NULL, NULL);
    R_useDynamicSymbols(dll, FALSE);
    R_forceSymbols(dll, TRUE);
}