Medical Imaging Interaction Toolkit  2018.4.99-1bab67a2
Medical Imaging Interaction Toolkit
mitkIOMimeTypes.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 MITKIOMIMETYPES_H
14 #define MITKIOMIMETYPES_H
15 
16 #include "mitkCustomMimeType.h"
17 
18 #include <string>
19 
20 namespace mitk
21 {
27  {
28  public:
30  {
31  public:
32  DicomMimeType();
33  bool AppliesTo(const std::string &path) const override;
34  DicomMimeType *Clone() const override;
35  };
36 
37  static std::vector<CustomMimeType *> Get();
38 
39  static std::string DEFAULT_BASE_NAME(); // application/vnd.mitk
40 
41  static std::string CATEGORY_IMAGES(); // Images
42  static std::string CATEGORY_SURFACES(); // Surfaces
43 
44  // ------------------------------ VTK formats ----------------------------------
45 
46  static CustomMimeType VTK_IMAGE_MIMETYPE(); // (mitk::Image) vti
47  static CustomMimeType VTK_IMAGE_LEGACY_MIMETYPE(); // (mitk::Image) vtk
48  static CustomMimeType VTK_PARALLEL_IMAGE_MIMETYPE(); // (mitk::Image) pvti
49  static CustomMimeType VTK_POLYDATA_MIMETYPE(); // (mitk::Surface) vtp, vtk
50  static CustomMimeType VTK_POLYDATA_LEGACY_MIMETYPE(); // (mitk::Surface) vtk
51  static CustomMimeType VTK_PARALLEL_POLYDATA_MIMETYPE(); // (mitk::Surface) pvtp
52  static CustomMimeType STEREOLITHOGRAPHY_MIMETYPE(); // (mitk::Surface) stl
53  static CustomMimeType WAVEFRONT_OBJ_MIMETYPE(); // (mitk::Surface) obj
54  static CustomMimeType STANFORD_PLY_MIMETYPE(); // (mitk::Surface) ply
55 
56  static std::string STEREOLITHOGRAPHY_NAME(); // DEFAULT_BASE_NAME.stl
57  static std::string VTK_IMAGE_NAME(); // DEFAULT_BASE_NAME.vtk.image
58  static std::string VTK_IMAGE_LEGACY_NAME(); // DEFAULT_BASE_NAME.vtk.image.legacy
59  static std::string VTK_PARALLEL_IMAGE_NAME(); // DEFAULT_BASE_NAME.vtk.parallel.image
60  static std::string VTK_POLYDATA_NAME(); // DEFAULT_BASE_NAME.vtk.polydata
61  static std::string VTK_POLYDATA_LEGACY_NAME(); // DEFAULT_BASE_NAME.vtk.polydata.legacy
62  static std::string VTK_PARALLEL_POLYDATA_NAME(); // DEFAULT_BASE_NAME.vtk.parallel.polydata
63  static std::string WAVEFRONT_OBJ_NAME(); // DEFAULT_BASE_NAME.obj
64  static std::string STANFORD_PLY_NAME(); // DEFAULT_BASE_NAME.ply
65 
66  // ------------------------- Image formats (ITK based) --------------------------
67 
68  static CustomMimeType NRRD_MIMETYPE(); // nrrd, nhdr
69  static CustomMimeType NIFTI_MIMETYPE();
70  static CustomMimeType RAW_MIMETYPE(); // raw
71  static DicomMimeType DICOM_MIMETYPE();
72 
73  static std::string NRRD_MIMETYPE_NAME(); // DEFAULT_BASE_NAME.nrrd
74  static std::string NIFTI_MIMETYPE_NAME();
75  static std::string RAW_MIMETYPE_NAME(); // DEFAULT_BASE_NAME.raw
76  static std::string DICOM_MIMETYPE_NAME();
77 
78  // ------------------------------ MITK formats ----------------------------------
79 
80  static CustomMimeType POINTSET_MIMETYPE(); // mps
81  static CustomMimeType GEOMETRY_DATA_MIMETYPE(); // .mitkgeometry
82 
83  static std::string POINTSET_MIMETYPE_NAME(); // DEFAULT_BASE_NAME.pointset
84 
85  private:
86  // purposely not implemented
87  IOMimeTypes();
88  IOMimeTypes(const IOMimeTypes &);
89  };
90 }
91 
92 #endif // MITKIOMIMETYPES_H
The IOMimeTypes class.
#define MITKCORE_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
The CustomMimeType class represents a custom mime-type which may be registered as a service object...