Mercurial > hg > orthanc-databases
comparison Framework/Plugins/DatabaseConstraint.cpp @ 554:1a74fc1bea2d find-refactoring
reorganization
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 09 Sep 2024 15:54:14 +0200 |
parents | 7f45f23b10d0 |
children |
comparison
equal
deleted
inserted
replaced
553:7f45f23b10d0 | 554:1a74fc1bea2d |
---|---|
36 #include <cassert> | 36 #include <cassert> |
37 | 37 |
38 | 38 |
39 namespace OrthancDatabases | 39 namespace OrthancDatabases |
40 { | 40 { |
41 namespace Plugins | |
42 { | |
43 OrthancPluginResourceType Convert(Orthanc::ResourceType type) | |
44 { | |
45 switch (type) | |
46 { | |
47 case Orthanc::ResourceType_Patient: | |
48 return OrthancPluginResourceType_Patient; | |
49 | |
50 case Orthanc::ResourceType_Study: | |
51 return OrthancPluginResourceType_Study; | |
52 | |
53 case Orthanc::ResourceType_Series: | |
54 return OrthancPluginResourceType_Series; | |
55 | |
56 case Orthanc::ResourceType_Instance: | |
57 return OrthancPluginResourceType_Instance; | |
58 | |
59 default: | |
60 throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange); | |
61 } | |
62 } | |
63 | |
64 | |
65 Orthanc::ResourceType Convert(OrthancPluginResourceType type) | |
66 { | |
67 switch (type) | |
68 { | |
69 case OrthancPluginResourceType_Patient: | |
70 return Orthanc::ResourceType_Patient; | |
71 | |
72 case OrthancPluginResourceType_Study: | |
73 return Orthanc::ResourceType_Study; | |
74 | |
75 case OrthancPluginResourceType_Series: | |
76 return Orthanc::ResourceType_Series; | |
77 | |
78 case OrthancPluginResourceType_Instance: | |
79 return Orthanc::ResourceType_Instance; | |
80 | |
81 default: | |
82 throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange); | |
83 } | |
84 } | |
85 | |
86 | |
87 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1 | |
88 OrthancPluginConstraintType Convert(ConstraintType constraint) | |
89 { | |
90 switch (constraint) | |
91 { | |
92 case ConstraintType_Equal: | |
93 return OrthancPluginConstraintType_Equal; | |
94 | |
95 case ConstraintType_GreaterOrEqual: | |
96 return OrthancPluginConstraintType_GreaterOrEqual; | |
97 | |
98 case ConstraintType_SmallerOrEqual: | |
99 return OrthancPluginConstraintType_SmallerOrEqual; | |
100 | |
101 case ConstraintType_Wildcard: | |
102 return OrthancPluginConstraintType_Wildcard; | |
103 | |
104 case ConstraintType_List: | |
105 return OrthancPluginConstraintType_List; | |
106 | |
107 default: | |
108 throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange); | |
109 } | |
110 } | |
111 #endif | |
112 | |
113 | |
114 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1 | |
115 ConstraintType Convert(OrthancPluginConstraintType constraint) | |
116 { | |
117 switch (constraint) | |
118 { | |
119 case OrthancPluginConstraintType_Equal: | |
120 return ConstraintType_Equal; | |
121 | |
122 case OrthancPluginConstraintType_GreaterOrEqual: | |
123 return ConstraintType_GreaterOrEqual; | |
124 | |
125 case OrthancPluginConstraintType_SmallerOrEqual: | |
126 return ConstraintType_SmallerOrEqual; | |
127 | |
128 case OrthancPluginConstraintType_Wildcard: | |
129 return ConstraintType_Wildcard; | |
130 | |
131 case OrthancPluginConstraintType_List: | |
132 return ConstraintType_List; | |
133 | |
134 default: | |
135 throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange); | |
136 } | |
137 } | |
138 #endif | |
139 } | |
140 | |
141 DatabaseConstraint::DatabaseConstraint(Orthanc::ResourceType level, | 41 DatabaseConstraint::DatabaseConstraint(Orthanc::ResourceType level, |
142 const Orthanc::DicomTag& tag, | 42 const Orthanc::DicomTag& tag, |
143 bool isIdentifier, | 43 bool isIdentifier, |
144 ConstraintType type, | 44 ConstraintType type, |
145 const std::vector<std::string>& values, | 45 const std::vector<std::string>& values, |
161 } | 61 } |
162 | 62 |
163 | 63 |
164 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1 | 64 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1 |
165 DatabaseConstraint::DatabaseConstraint(const OrthancPluginDatabaseConstraint& constraint) : | 65 DatabaseConstraint::DatabaseConstraint(const OrthancPluginDatabaseConstraint& constraint) : |
166 level_(Plugins::Convert(constraint.level)), | 66 level_(MessagesToolbox::Convert(constraint.level)), |
167 tag_(constraint.tagGroup, constraint.tagElement), | 67 tag_(constraint.tagGroup, constraint.tagElement), |
168 isIdentifier_(constraint.isIdentifierTag), | 68 isIdentifier_(constraint.isIdentifierTag), |
169 constraintType_(Plugins::Convert(constraint.type)), | 69 constraintType_(MessagesToolbox::Convert(constraint.type)), |
170 caseSensitive_(constraint.isCaseSensitive), | 70 caseSensitive_(constraint.isCaseSensitive), |
171 mandatory_(constraint.isMandatory) | 71 mandatory_(constraint.isMandatory) |
172 { | 72 { |
173 if (constraintType_ != ConstraintType_List && | 73 if (constraintType_ != ConstraintType_List && |
174 constraint.valuesCount != 1) | 74 constraint.valuesCount != 1) |
187 #endif | 87 #endif |
188 | 88 |
189 | 89 |
190 #if ORTHANC_PLUGINS_HAS_INTEGRATED_FIND == 1 | 90 #if ORTHANC_PLUGINS_HAS_INTEGRATED_FIND == 1 |
191 DatabaseConstraint::DatabaseConstraint(const Orthanc::DatabasePluginMessages::DatabaseConstraint& constraint) : | 91 DatabaseConstraint::DatabaseConstraint(const Orthanc::DatabasePluginMessages::DatabaseConstraint& constraint) : |
192 level_(OrthancDatabases::MessagesToolbox::Convert(constraint.level())), | 92 level_(MessagesToolbox::Convert(constraint.level())), |
193 tag_(constraint.tag_group(), constraint.tag_element()), | 93 tag_(constraint.tag_group(), constraint.tag_element()), |
194 isIdentifier_(constraint.is_identifier_tag()), | 94 isIdentifier_(constraint.is_identifier_tag()), |
195 caseSensitive_(constraint.is_case_sensitive()), | 95 caseSensitive_(constraint.is_case_sensitive()), |
196 mandatory_(constraint.is_mandatory()) | 96 mandatory_(constraint.is_mandatory()) |
197 { | 97 { |
274 for (size_t i = 0; i < values_.size(); i++) | 174 for (size_t i = 0; i < values_.size(); i++) |
275 { | 175 { |
276 tmpValues[i] = values_[i].c_str(); | 176 tmpValues[i] = values_[i].c_str(); |
277 } | 177 } |
278 | 178 |
279 constraint.level = Plugins::Convert(level_); | 179 constraint.level = MessagesToolbox::ConvertToPlainC(level_); |
280 constraint.tagGroup = tag_.GetGroup(); | 180 constraint.tagGroup = tag_.GetGroup(); |
281 constraint.tagElement = tag_.GetElement(); | 181 constraint.tagElement = tag_.GetElement(); |
282 constraint.isIdentifierTag = isIdentifier_; | 182 constraint.isIdentifierTag = isIdentifier_; |
283 constraint.isCaseSensitive = caseSensitive_; | 183 constraint.isCaseSensitive = caseSensitive_; |
284 constraint.isMandatory = mandatory_; | 184 constraint.isMandatory = mandatory_; |
285 constraint.type = Plugins::Convert(constraintType_); | 185 constraint.type = MessagesToolbox::ConvertToPlainC(constraintType_); |
286 constraint.valuesCount = values_.size(); | 186 constraint.valuesCount = values_.size(); |
287 constraint.values = (tmpValues.empty() ? NULL : &tmpValues[0]); | 187 constraint.values = (tmpValues.empty() ? NULL : &tmpValues[0]); |
288 } | 188 } |
289 #endif | 189 #endif |
290 | 190 |