Age | Commit message (Collapse) | Author |
|
This change will make it easier for the scheme wrapper to curry
integrands.
* include/extent-sampling.h (integrand_t): Redefine type as struct.
(integral): Pass pointer to integrand_t.
* src/extent-sampling.sc (integral-per-direction, integral): Handle
new integrand-t type.
(invoke-integrand): New sc macro.
|
|
* include/extent-sampling.h (volume, volume_window, integral,
volume_cone, volume_experiment): Pass extent_oracle_t as pointer.
* src/extent-sampling.sc: Likewise.
|
|
This change will make it easier for the scheme wrapper to curry extent
oracles.
* include/extent-sampling.h (extent_oracle_t): Define as a struct that
bundles the parameters required by the actual extent oracle.
* include/oracles.h (bernoulli_params, uniform_params, beta_params,
cube_params, ellipsoid_params, spheroid_params): New types.
(bernoulli_extent_generator, uniform_extent_generator,
beta_extent_generator): Rename to bernoulli_extent_oracle,
uniform_extent_oracle, beta_extent_oracle respectively and change to
the new extent oracle prototype.
(bernoulli_true_volume, uniform_true_volume, beta_true_volume,
cube_extent_oracle, cube_extent_oracle_with_center, cube_true_volume,
ellipsoid_extent_oracle, ellipsoid_true_volume,
spheroid_extent_oracle, spheroid_true_volume): Change to new extent
oracle and true volume prototypes.
* src/oracles.sc: Likewise.
* src/extent-sampling.sc (invoke-extent-oracle): New macro.
(volume, volume-window, integral, volume-cone): Call using new extent
oracle prototype.
|
|
sph-sc is a scheme-like S-expression syntax for C. It elements much of
the pain and repetition involved in writing C syntax.
* src/extent-sampling.c, src/gaussian-nd-random.c, src/nd-random.c,
src/oracles.c, src/utils.c: Delete files.
* src/extent-sampling.sc, src/gaussian-nd-random.sc,
src/macros/macros.sc, src/nd-random.sc, src/oracles.sc, src/utils.sc:
New files.
* CMakeLists.txt: Generate C source files from SC source files.
|