Medical Imaging Interaction Toolkit  2021.02.99-b1c7fb9e
Medical Imaging Interaction Toolkit
mitkDICOMRTMimeTypes.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 MITKDICOMRTMimeTypes_H
14 #define MITKDICOMRTMimeTypes_H
15 
16 #include <mitkCustomMimeType.h>
17 #include <MitkRTExports.h>
18 
19 #include <array>
20 #include <memory>
21 #include <string>
22 
23 namespace mitk {
24 
26 {
27 public:
28 
30  {
31  public:
33  bool AppliesTo(const std::string &path) const override;
34 
35  RTDoseMimeType* Clone() const override;
36  };
37 
39  {
40  public:
42  bool AppliesTo(const std::string &path) const override;
43  RTStructMimeType* Clone() const override;
44  };
45 
47  {
48  public:
50  bool AppliesTo(const std::string &path) const override;
51  RTPlanMimeType* Clone() const override;
52  };
53  // Get all DicomRT Mime Types
54  static std::array<std::unique_ptr<CustomMimeType>, 3> Get();
55 
56  static RTDoseMimeType DICOMRT_DOSE_MIMETYPE();
57  static RTStructMimeType DICOMRT_STRUCT_MIMETYPE();
58  static RTPlanMimeType DICOMRT_PLAN_MIMETYPE();
59 
60  static std::string DICOMRT_DOSE_MIMETYPE_NAME();
61  static std::string DICOMRT_STRUCT_MIMETYPE_NAME();
62  static std::string DICOMRT_PLAN_MIMETYPE_NAME();
63 
64  static std::string DICOMRT_DOSE_MIMETYPE_DESCRIPTION();
65  static std::string DICOMRT_STRUCT_MIMETYPE_DESCRIPTION();
66  static std::string DICOMRT_PLAN_MIMETYPE_DESCRIPTION();
67 
68  DICOMRTMimeTypes() = delete;
69  DICOMRTMimeTypes(const DICOMRTMimeTypes&) = delete;
70 
71  static bool canReadByDicomFileReader(const std::string & path);
72  static std::string GetModality(const std::string & path);
73 };
74 
75 }
76 
77 #endif // MITKDICOMRTMimeTypes_H
DataCollection - Class to facilitate loading/accessing structured data.
The CustomMimeType class represents a custom mime-type which may be registered as a service object...
#define MITKRT_EXPORT
Definition: MitkRTExports.h:15