From 845b398d9e2e078d7cb2a1da84fadceca66306a2 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Tue, 3 Oct 2017 14:52:24 +0200 Subject: Add experimental accumulate_FP/BP/FDK python functions --- include/astra/CompositeGeometryManager.h | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'include/astra/CompositeGeometryManager.h') diff --git a/include/astra/CompositeGeometryManager.h b/include/astra/CompositeGeometryManager.h index 08eb7af..35d1da2 100644 --- a/include/astra/CompositeGeometryManager.h +++ b/include/astra/CompositeGeometryManager.h @@ -140,7 +140,7 @@ public: enum { JOB_FP, JOB_BP, JOB_FDK, JOB_NOP } eType; - enum { + enum EMode { MODE_ADD, MODE_SET } eMode; @@ -154,22 +154,24 @@ public: SJob createJobFP(CProjector3D *pProjector, CFloat32VolumeData3D *pVolData, - CFloat32ProjectionData3D *pProjData); + CFloat32ProjectionData3D *pProjData, + SJob::EMode eMode); SJob createJobBP(CProjector3D *pProjector, CFloat32VolumeData3D *pVolData, - CFloat32ProjectionData3D *pProjData); + CFloat32ProjectionData3D *pProjData, + SJob::EMode eMode); // Convenience functions for creating and running a single FP or BP job bool doFP(CProjector3D *pProjector, CFloat32VolumeData3D *pVolData, - CFloat32ProjectionData3D *pProjData); + CFloat32ProjectionData3D *pProjData, SJob::EMode eMode = SJob::MODE_SET); bool doBP(CProjector3D *pProjector, CFloat32VolumeData3D *pVolData, - CFloat32ProjectionData3D *pProjData); + CFloat32ProjectionData3D *pProjData, SJob::EMode eMode = SJob::MODE_SET); bool doFDK(CProjector3D *pProjector, CFloat32VolumeData3D *pVolData, CFloat32ProjectionData3D *pProjData, bool bShortScan, - const float *pfFilter = 0); + const float *pfFilter = 0, SJob::EMode eMode = SJob::MODE_SET); - bool doFP(CProjector3D *pProjector, const std::vector& volData, const std::vector& projData); - bool doBP(CProjector3D *pProjector, const std::vector& volData, const std::vector& projData); + bool doFP(CProjector3D *pProjector, const std::vector& volData, const std::vector& projData, SJob::EMode eMode = SJob::MODE_SET); + bool doBP(CProjector3D *pProjector, const std::vector& volData, const std::vector& projData, SJob::EMode eMode = SJob::MODE_SET); void setGPUIndices(const std::vector& GPUIndices); -- cgit v1.2.3