diff options
author | Willem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl> | 2019-04-03 22:32:11 +0200 |
---|---|---|
committer | Willem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl> | 2019-09-25 14:10:09 +0200 |
commit | 744605ed826196aa6e0e3e3b5e945e50d830ed3a (patch) | |
tree | 6a7e628bd63ec2913816798bec98baee12147f67 | |
parent | 4b576ee6ad461b162dd64538f54df47b65b37972 (diff) | |
download | astra-744605ed826196aa6e0e3e3b5e945e50d830ed3a.tar.gz astra-744605ed826196aa6e0e3e3b5e945e50d830ed3a.tar.bz2 astra-744605ed826196aa6e0e3e3b5e945e50d830ed3a.tar.xz astra-744605ed826196aa6e0e3e3b5e945e50d830ed3a.zip |
Add feature flags for changed scaling behaviour
-rw-r--r-- | include/astra/Features.h | 16 | ||||
-rw-r--r-- | src/Features.cpp | 6 |
2 files changed, 20 insertions, 2 deletions
diff --git a/include/astra/Features.h b/include/astra/Features.h index d88ae71..c7ef98c 100644 --- a/include/astra/Features.h +++ b/include/astra/Features.h @@ -38,10 +38,22 @@ _AstraExport bool hasFeature(const std::string &feature); FEATURES: -cuda: is cuda support compiled in? +cuda + is cuda support compiled in? NB: To check if there is also actually a usable GPU, use cudaAvailable() -mex_link: is there support for the matlab command astra_mex_data3d('link')? +mex_link + is there support for the matlab command astra_mex_data3d('link')? + +projectors_scaled_as_line_integrals + This is set since all 2D and 3D, CPU and GPU projectors scale their outputs + to approximate line integrals. (Previously, some 2D projectors were scaled + as area integrals.) + +fan_cone_BP_density_weighting_by_default + This is set since fan beam and cone beam BP operations perform ray density + weighting by default to more closely approximate the true mathematical adjoint. + The DensityWeighting cuda3d projector option is removed. For future backward-incompatible changes, extra features will be added here diff --git a/src/Features.cpp b/src/Features.cpp index 9114131..09a3499 100644 --- a/src/Features.cpp +++ b/src/Features.cpp @@ -34,6 +34,12 @@ _AstraExport bool hasFeature(const std::string &flag) { if (flag == "cuda") { return cudaEnabled(); } + if (flag == "projectors_scaled_as_line_integrals") { + return true; + } + if (flag == "fan_cone_BP_density_weighting_by_default") { + return true; + } return false; } |