Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
mitkIModelProvider.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 mitkIModelProvider_h
14 #define mitkIModelProvider_h
15 
16 
17 #include <mitkServiceInterface.h>
18 
19 namespace mitk
20 {
21  class BaseData;
22 }
23 
24 namespace itk
25 {
26  template <class T>
27  class SmartPointer;
28 }
29 
30 namespace mitk
31 {
47  struct MITKCORE_EXPORT IFileReader : public IFileIO
48  {
49  virtual ~IFileReader();
50 
55  virtual void SetInput(const std::string &location) = 0;
56 
66  virtual void SetInput(const std::string &location, std::istream *is) = 0;
67 
72  virtual std::string GetInputLocation() const = 0;
73 
78  virtual std::istream *GetInputStream() const = 0;
79 
91  virtual std::vector<itk::SmartPointer<BaseData>> Read() = 0;
92 
106  virtual DataStorage::SetOfObjects::Pointer Read(mitk::DataStorage &ds) = 0;
107  };
108 
109 } // namespace mitk
110 
111 MITK_DECLARE_SERVICE_INTERFACE(mitk::IFileReader, "org.mitk.IFileReader")
112 
113 #endif
mitkServiceInterface.h
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
mitk::IFileReader
The common interface for all MITK file readers.
Definition: mitkIFileReader.h:61
mitk::DataStorage
Data management class that handles 'was created by' relations.
Definition: mitkDataStorage.h:43
itk
SET FUNCTIONS.
Definition: itkIntelligentBinaryClosingFilter.h:30
MITK_DECLARE_SERVICE_INTERFACE
#define MITK_DECLARE_SERVICE_INTERFACE(IFace, IId)
Definition: mitkServiceInterface.h:26
MITKCORE_EXPORT
#define MITKCORE_EXPORT
Definition: MitkCoreExports.h:15