diff --git a/Modules/DiffusionImaging/Algorithms/itkMergeDiffusionImagesFilter.h b/Modules/DiffusionImaging/Algorithms/itkMergeDiffusionImagesFilter.h index 7eafe31b16..aad505540c 100644 --- a/Modules/DiffusionImaging/Algorithms/itkMergeDiffusionImagesFilter.h +++ b/Modules/DiffusionImaging/Algorithms/itkMergeDiffusionImagesFilter.h @@ -1,99 +1,102 @@ /*=================================================================== The Medical Imaging Interaction Toolkit (MITK) Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See LICENSE.txt or http://www.mitk.org for details. ===================================================================*/ /*========================================================================= Program: Tensor ToolKit - TTK Module: $URL: svn://scm.gforge.inria.fr/svn/ttk/trunk/Algorithms/itkMergeDiffusionImagesFilter.h $ Language: C++ Date: $Date: 2010-06-07 13:39:13 +0200 (Mo, 07 Jun 2010) $ Version: $Revision: 68 $ Copyright (c) INRIA 2010. All rights reserved. See LICENSE.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef _itk_MergeDiffusionImagesFilter_h_ #define _itk_MergeDiffusionImagesFilter_h_ #include "itkImageToImageFilter.h" #include #include #include namespace itk { template class MergeDiffusionImagesFilter : public ImageSource > { public: - typedef itk::VectorImage DwiImageType; - typedef MergeDiffusionImagesFilter Self; - typedef ImageSource Superclass; + typedef MergeDiffusionImagesFilter Self; + typedef ImageSource< itk::VectorImage > Superclass; typedef SmartPointer Pointer; typedef SmartPointer ConstPointer; + /** Method for creation through the object factory. */ + itkNewMacro(Self); + + /** Runtime information support. */ + itkTypeMacro(MergeDiffusionImagesFilter, ImageSource); + + typedef itk::VectorImage DwiImageType; typedef typename DwiImageType::PixelType DwiPixelType; typedef typename DwiImageType::RegionType DwiRegionType; typedef typename std::vector< typename DwiImageType::Pointer > DwiImageContainerType; typedef vnl_vector_fixed< double, 3 > GradientType; typedef itk::VectorContainer< unsigned int, GradientType > GradientListType; typedef typename std::vector< GradientListType::Pointer > GradientListContainerType; - itkTypeMacro(MergeDiffusionImagesFilter, ImageToImageFilter) - itkNewMacro(Self) - void SetImageVolumes(DwiImageContainerType cont); void SetGradientLists(GradientListContainerType cont); void SetBValues(std::vector< double > bvals); GradientListType::Pointer GetOutputGradients(); double GetBValue(); protected: MergeDiffusionImagesFilter(); ~MergeDiffusionImagesFilter(); void GenerateData(); DwiImageContainerType m_ImageVolumes; GradientListContainerType m_GradientLists; std::vector< double > m_BValues; int m_NumGradients; GradientListType::Pointer m_OutputGradients; double m_BValue; }; } // end of namespace #ifndef ITK_MANUAL_INSTANTIATION #include "itkMergeDiffusionImagesFilter.txx" #endif #endif