/vol/vipdata/irtk/image++/include/irtkResamplingWithPadding.h

00001 /*=========================================================================
00002 
00003   Library   : Image Registration Toolkit (IRTK)
00004   Module    : $Id: irtkResamplingWithPadding.h 2 2008-12-23 12:40:14Z dr $
00005   Copyright : Imperial College, Department of Computing
00006               Visual Information Processing (VIP), 2008 onwards
00007   Date      : $Date: 2008-12-23 12:40:14 +0000 (Tue, 23 Dec 2008) $
00008   Version   : $Revision: 2 $
00009   Changes   : $Author: dr $
00010 
00011 =========================================================================*/
00012 
00013 #ifndef _IRTKRESAMPLINGWITHPADDING_H
00014 
00015 #define _IRTKRESAMPLINGWITHPADDING_H
00016 
00017 #ifdef HAS_TBB
00018 
00019 template <class VoxelType> class irtkMultiThreadedResamplingWithPadding;
00020 
00021 #endif
00022 
00035 template <class VoxelType> class irtkResamplingWithPadding : public irtkResampling<VoxelType>
00036 {
00037 
00038 #ifdef HAS_TBB
00039 
00040   friend class irtkMultiThreadedResamplingWithPadding<VoxelType>;
00041 
00042 #endif
00043 
00044 protected:
00045 
00047   VoxelType _PaddingValue;
00048 
00050   virtual Bool RequiresBuffering();
00051 
00053   virtual const char *NameOfClass();
00054 
00056   virtual void Initialize();
00057 
00058 public:
00059 
00061   irtkResamplingWithPadding(double, double, double, VoxelType);
00062 
00064   virtual void Run();
00065 
00067   SetMacro(PaddingValue, VoxelType);
00068 
00070   GetMacro(PaddingValue, VoxelType);
00071 
00072 };
00073 
00074 #endif