Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkDataCollectionVectorImageIterator.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkDataCollectionVectorImageIterator_h
14 #define mitkDataCollectionVectorImageIterator_h
15 #include <mitkDataCollection.h>
17 
18 #include "itkImage.h"
19 
20 namespace mitk
21 {
22 
23  /*
24  * Iterate over a data collection and return a vector image for all selected
25  * modalities.
26  * TODO SW: this class needs a module test urgently.
27  */
28  template <typename TDataType, int ImageDimension>
30  {
31 
32  public:
33  typedef itk::VectorImage<TDataType, ImageDimension> VectorImageType;
34  typedef typename VectorImageType::Pointer VectorImagePointerType;
35  typedef itk::ImageRegionIterator<VectorImageType> VectorImageIteratorType;
36 
37  DataCollectionVectorImageIterator(DataCollection::Pointer collection, std::vector<std::string> featureNames);
38 
39  void ToBegin();
40 
41  bool IsAtEnd();
42 
44 
46 
54 
55  void
56  AddImage(typename itk::Image<TDataType, ImageDimension>::Pointer image, std::string name);
57 
59  typedef typename std::vector< SingleImageIterator > DataCollectionSingleImageIterators;
60 
61  private:
62 
63  DataCollection::Pointer m_Collection;
64  DataCollectionSingleImageIterators m_FeatureIterators;
65  };
66 
67 } /* namespace mitk */
68 
69 
70 #include <Iterators/mitkDataCollectionVectorImageIterator.cxx>
71 
72 #endif
mitk::DataCollectionVectorImageIterator::VectorImageIteratorType
itk::ImageRegionIterator< VectorImageType > VectorImageIteratorType
Definition: mitkDataCollectionVectorImageIterator.h:35
mitk::DataCollectionSingleImageIterator
Definition: mitkDataCollectionSingleImageIterator.h:30
itk::SmartPointer< Self >
mitk::DataCollectionVectorImageIterator::GetVectorImage
VectorImagePointerType GetVectorImage()
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
mitk::DataCollectionVectorImageIterator::SingleImageIterator
mitk::DataCollectionSingleImageIterator< TDataType, ImageDimension > SingleImageIterator
Definition: mitkDataCollectionVectorImageIterator.h:58
mitkDataCollection.h
mitk::DataCollectionVectorImageIterator::VectorImageType
itk::VectorImage< TDataType, ImageDimension > VectorImageType
Definition: mitkDataCollectionVectorImageIterator.h:33
mitk::DataCollectionVectorImageIterator
Definition: mitkDataCollectionVectorImageIterator.h:29
mitk::DataCollectionVectorImageIterator::ToBegin
void ToBegin()
mitk::DataCollectionVectorImageIterator::IsAtEnd
bool IsAtEnd()
mitk::DataCollectionVectorImageIterator::DataCollectionSingleImageIterators
std::vector< SingleImageIterator > DataCollectionSingleImageIterators
Definition: mitkDataCollectionVectorImageIterator.h:59
mitk::DataCollectionVectorImageIterator::AddImage
void AddImage(typename itk::Image< TDataType, ImageDimension >::Pointer image, std::string name)
mitk::DataCollectionVectorImageIterator::VectorImagePointerType
VectorImageType::Pointer VectorImagePointerType
Definition: mitkDataCollectionVectorImageIterator.h:34
mitk::DataCollectionVectorImageIterator::operator++
DataCollectionVectorImageIterator & operator++()
mitk::DataCollectionVectorImageIterator::DataCollectionVectorImageIterator
DataCollectionVectorImageIterator(DataCollection::Pointer collection, std::vector< std::string > featureNames)
mitkDataCollectionSingleImageIterator.h