summaryrefslogtreecommitdiffstats
path: root/src/CompositeGeometryManager.cpp
diff options
context:
space:
mode:
authorWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2016-12-01 14:03:56 +0100
committerWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2016-12-01 14:05:54 +0100
commit55dabbf035b55f71c4261c9de7ef572da46300ff (patch)
tree0452eaf1342a67c56e1f785387116e1bb62fcd31 /src/CompositeGeometryManager.cpp
parent72aaa4f9176416303eff7cbd9ec56dcb13adc54f (diff)
downloadastra-55dabbf035b55f71c4261c9de7ef572da46300ff.tar.gz
astra-55dabbf035b55f71c4261c9de7ef572da46300ff.tar.bz2
astra-55dabbf035b55f71c4261c9de7ef572da46300ff.tar.xz
astra-55dabbf035b55f71c4261c9de7ef572da46300ff.zip
Expose the density weighting option of cone_bp
It is now exposed via the new DensityWeighting option of CudaProjector3D.
Diffstat (limited to 'src/CompositeGeometryManager.cpp')
-rw-r--r--src/CompositeGeometryManager.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/CompositeGeometryManager.cpp b/src/CompositeGeometryManager.cpp
index f72f38a..c3af228 100644
--- a/src/CompositeGeometryManager.cpp
+++ b/src/CompositeGeometryManager.cpp
@@ -1228,10 +1228,12 @@ static bool doJob(const CCompositeGeometryManager::TJobSet::const_iterator& iter
Cuda3DProjectionKernel projKernel = ker3d_default;
int detectorSuperSampling = 1;
int voxelSuperSampling = 1;
+ bool densityWeighting = false;
if (projector) {
projKernel = projector->getProjectionKernel();
detectorSuperSampling = projector->getDetectorSuperSampling();
voxelSuperSampling = projector->getVoxelSuperSampling();
+ densityWeighting = projector->getDensityWeighting();
}
size_t inx, iny, inz;
@@ -1274,7 +1276,7 @@ static bool doJob(const CCompositeGeometryManager::TJobSet::const_iterator& iter
ASTRA_DEBUG("CCompositeGeometryManager::doJobs: doing BP");
- ok = astraCUDA3d::BP(((CCompositeGeometryManager::CProjectionPart*)j.pInput.get())->pGeom, inputMem, ((CCompositeGeometryManager::CVolumePart*)j.pOutput.get())->pGeom, outputMem, voxelSuperSampling);
+ ok = astraCUDA3d::BP(((CCompositeGeometryManager::CProjectionPart*)j.pInput.get())->pGeom, inputMem, ((CCompositeGeometryManager::CVolumePart*)j.pOutput.get())->pGeom, outputMem, voxelSuperSampling, densityWeighting);
if (!ok) ASTRA_ERROR("Error performing sub-BP");
ASTRA_DEBUG("CCompositeGeometryManager::doJobs: BP done");
}