diff options
author | Willem Jan Palenstijn <wjp@usecode.org> | 2016-10-07 16:28:41 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-07 16:28:41 +0200 |
commit | 8f2b55a66db9747419e75dae5973281a7536b934 (patch) | |
tree | e7ca39da75ad5c9d728698295ac9c8ec32e4e499 /cuda/3d/mem3d.cu | |
parent | e4b8b6e94be7c5f7dbaad51543c5eace8882a115 (diff) | |
parent | e835d5d588b7404037289c7b5cfa1475e931ba44 (diff) | |
download | astra-8f2b55a66db9747419e75dae5973281a7536b934.tar.gz astra-8f2b55a66db9747419e75dae5973281a7536b934.tar.bz2 astra-8f2b55a66db9747419e75dae5973281a7536b934.tar.xz astra-8f2b55a66db9747419e75dae5973281a7536b934.zip |
Merge pull request #42 from wjp/FDK
Use CompositeGeometryManager for FDK
Diffstat (limited to 'cuda/3d/mem3d.cu')
-rw-r--r-- | cuda/3d/mem3d.cu | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/cuda/3d/mem3d.cu b/cuda/3d/mem3d.cu index 9a239da..4fb30a2 100644 --- a/cuda/3d/mem3d.cu +++ b/cuda/3d/mem3d.cu @@ -38,6 +38,7 @@ $Id$ #include "cone_bp.h" #include "par3d_fp.h" #include "par3d_bp.h" +#include "fdk.h" #include "astra/Logging.h" @@ -278,6 +279,33 @@ bool BP(const astra::CProjectionGeometry3D* pProjGeom, MemHandle3D projData, con } +bool FDK(const astra::CProjectionGeometry3D* pProjGeom, MemHandle3D projData, const astra::CVolumeGeometry3D* pVolGeom, MemHandle3D volData, bool bShortScan) +{ + SDimensions3D dims; + SProjectorParams3D params; + + bool ok = convertAstraGeometry_dims(pVolGeom, pProjGeom, dims); + if (!ok) + return false; + + SPar3DProjection* pParProjs; + SConeProjection* pConeProjs; + + ok = convertAstraGeometry(pVolGeom, pProjGeom, + pParProjs, pConeProjs, + params); + + if (!ok || !pConeProjs) + return false; + + ok &= FDK(volData.d->ptr, projData.d->ptr, pConeProjs, dims, params, bShortScan); + + return ok; + + + +} + |