Medical Imaging Interaction Toolkit  2018.4.99-a3d2e8fb
Medical Imaging Interaction Toolkit
mitkIFileWriter.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 IFileWriter_H_HEADER_INCLUDED_C1E7E521
14 #define IFileWriter_H_HEADER_INCLUDED_C1E7E521
15 
16 #include <mitkIFileIO.h>
17 
18 #include <mitkServiceInterface.h>
19 
20 namespace mitk
21 {
22  class BaseData;
23 }
24 
25 namespace mitk
26 {
57  {
58  ~IFileWriter() override;
59 
64  virtual void SetInput(const BaseData *data) = 0;
65 
70  virtual const BaseData *GetInput() const = 0;
71 
80  virtual void SetOutputLocation(const std::string &location) = 0;
81 
89  virtual std::string GetOutputLocation() const = 0;
90 
100  virtual void SetOutputStream(const std::string &location, std::ostream *os) = 0;
101 
106  virtual std::ostream *GetOutputStream() const = 0;
107 
118  virtual void Write() = 0;
119 
127  static std::string PROP_BASEDATA_TYPE();
128  };
129 
130 } // namespace mitk
131 
132 MITK_DECLARE_SERVICE_INTERFACE(mitk::IFileWriter, "org.mitk.IFileWriter")
133 
134 #endif /* IFileWriter_H_HEADER_INCLUDED_C1E7E521 */
#define MITK_DECLARE_SERVICE_INTERFACE(IFace, IId)
#define MITKCORE_EXPORT
Base of all data objects.
Definition: mitkBaseData.h:37
DataCollection - Class to facilitate loading/accessing structured data.
Common interface for all MITK file reader and writer.
Definition: mitkIFileIO.h:35
The common interface of all MITK file writers.