00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date: 2007-03-05 12:05:09 +0100 (Mo, 05 Mrz 2007) $ 00006 Version: $Revision: 9583 $ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 00019 #ifndef _mitkGroupDiffusionHeadersFilter_h 00020 #define _mitkGroupDiffusionHeadersFilter_h 00021 00022 #include "MitkDiffusionImagingExports.h" 00023 00024 #include "mitkBaseProcess.h" 00025 #include "mitkDiffusionImageHeaderInformation.h" 00026 00027 namespace mitk 00028 { 00033 class MitkDiffusionImaging_EXPORT GroupDiffusionHeadersFilter : public BaseProcess 00034 { 00035 public: 00036 mitkClassMacro( GroupDiffusionHeadersFilter, BaseProcess ); 00037 00038 itkNewMacro( Self ); 00039 00040 typedef mitk::DiffusionImageHeaderInformation HeaderType; 00041 typedef HeaderType::Pointer HeaderPointer; 00042 typedef std::vector<HeaderPointer> InputType; 00043 00044 typedef std::vector<InputType> OutputType; 00045 00050 virtual void SetInput( InputType input ); 00051 00056 virtual void SetInput( const unsigned int& idx, InputType input ); 00057 00062 virtual void SetNthOutput( const unsigned int& idx, InputType output ); 00063 00067 InputType GetInput( void ); 00068 00073 InputType GetInput( const unsigned int& idx ); 00074 00075 OutputType GetOutput(); 00076 00077 virtual void GenerateOutputInformation(); 00078 00079 virtual void Update(); 00080 00081 protected: 00082 00086 GroupDiffusionHeadersFilter(); 00087 00091 virtual ~GroupDiffusionHeadersFilter(); 00092 00093 OutputType m_Output; 00094 InputType m_Input; 00095 00096 private: 00097 00098 void operator=( const Self& ); //purposely not implemented 00099 } 00100 ; 00101 00102 } //end of namespace mitk 00103 00104 #endif 00105 00106