comparison OrthancServer/FromDcmtkBridge.h @ 2131:bb199bccdc45

reorganization
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 08 Nov 2016 10:49:45 +0100
parents 9329ba17a069
children 8cbb55089a1d
comparison
equal deleted inserted replaced
2130:72cb107a7346 2131:bb199bccdc45
31 31
32 32
33 #pragma once 33 #pragma once
34 34
35 #include "ServerEnumerations.h" 35 #include "ServerEnumerations.h"
36 #include "OrthancInitialization.h"
37 36
38 #include "../Core/DicomFormat/DicomElement.h" 37 #include "../Core/DicomFormat/DicomElement.h"
39 #include "../Core/DicomFormat/DicomMap.h" 38 #include "../Core/DicomFormat/DicomMap.h"
40 39
41 #include <dcmtk/dcmdata/dcdatset.h> 40 #include <dcmtk/dcmdata/dcdatset.h>
56 #if ORTHANC_BUILD_UNIT_TESTS == 1 55 #if ORTHANC_BUILD_UNIT_TESTS == 1
57 FRIEND_TEST(FromDcmtkBridge, FromJson); 56 FRIEND_TEST(FromDcmtkBridge, FromJson);
58 #endif 57 #endif
59 58
60 friend class ParsedDicomFile; 59 friend class ParsedDicomFile;
60 friend class Configuration;
61 61
62 private: 62 private:
63 FromDcmtkBridge(); // Pure static class 63 FromDcmtkBridge(); // Pure static class
64 64
65 static void ExtractDicomSummary(DicomMap& target, 65 static void ExtractDicomSummary(DicomMap& target,
83 83
84 static void ExtractDicomAsJson(Json::Value& target, 84 static void ExtractDicomAsJson(Json::Value& target,
85 DcmDataset& dataset, 85 DcmDataset& dataset,
86 DicomToJsonFormat format, 86 DicomToJsonFormat format,
87 DicomToJsonFlags flags, 87 DicomToJsonFlags flags,
88 unsigned int maxStringLength); 88 unsigned int maxStringLength,
89 Encoding defaultEncoding);
89 90
90 public: 91 public:
91 static void InitializeDictionary(); 92 static void InitializeDictionary();
92 93
93 static void RegisterDictionaryTag(const DicomTag& tag, 94 static void RegisterDictionaryTag(const DicomTag& tag,
98 const std::string& privateCreator); 99 const std::string& privateCreator);
99 100
100 static Encoding DetectEncoding(DcmItem& dataset, 101 static Encoding DetectEncoding(DcmItem& dataset,
101 Encoding defaultEncoding); 102 Encoding defaultEncoding);
102 103
103 static void ExtractDicomSummary(DicomMap& target,
104 DcmItem& dataset)
105 {
106 ExtractDicomSummary(target, dataset, ORTHANC_MAXIMUM_TAG_LENGTH, Configuration::GetDefaultEncoding());
107 }
108
109 static DicomTag Convert(const DcmTag& tag); 104 static DicomTag Convert(const DcmTag& tag);
110 105
111 static DicomTag GetTag(const DcmElement& element); 106 static DicomTag GetTag(const DcmElement& element);
112 107
113 static bool IsUnknownTag(const DicomTag& tag); 108 static bool IsUnknownTag(const DicomTag& tag);
114 109
115 static DicomValue* ConvertLeafElement(DcmElement& element, 110 static DicomValue* ConvertLeafElement(DcmElement& element,
116 DicomToJsonFlags flags, 111 DicomToJsonFlags flags,
117 unsigned int maxStringLength, 112 unsigned int maxStringLength,
118 Encoding encoding); 113 Encoding encoding);
119
120 static void ExtractDicomAsJson(Json::Value& target,
121 DcmDataset& dataset)
122 {
123 ExtractDicomAsJson(target, dataset, DicomToJsonFormat_Full, DicomToJsonFlags_Default, ORTHANC_MAXIMUM_TAG_LENGTH);
124 }
125 114
126 static void ExtractHeaderAsJson(Json::Value& target, 115 static void ExtractHeaderAsJson(Json::Value& target,
127 DcmMetaInfo& header, 116 DcmMetaInfo& header,
128 DicomToJsonFormat format, 117 DicomToJsonFormat format,
129 DicomToJsonFlags flags, 118 DicomToJsonFlags flags,