comparison OrthancServer/IDatabaseWrapper.h @ 1729:54d78925cbb6 db-changes

notes
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 20 Oct 2015 17:39:58 +0200
parents 4941494b5dd8
children 38dda23c7d7d
comparison
equal deleted inserted replaced
1728:4941494b5dd8 1729:54d78925cbb6
149 virtual void LookupIdentifierExact(std::list<int64_t>& target, 149 virtual void LookupIdentifierExact(std::list<int64_t>& target,
150 ResourceType level, 150 ResourceType level,
151 const DicomTag& tag, 151 const DicomTag& tag,
152 const std::string& value) = 0; 152 const std::string& value) = 0;
153 153
154 /**
155 * Primitive for wildcard matching, as defined in DICOM:
156 * http://dicom.nema.org/dicom/2013/output/chtml/part04/sect_C.2.html#sect_C.2.2.2.4
157 *
158 * "Any occurrence of an "*" or a "?", then "*" shall match any
159 * sequence of characters (including a zero length value) and "?"
160 * shall match any single character. This matching is case
161 * sensitive, except for Attributes with an PN Value
162 * Representation (e.g., Patient Name (0010,0010))."
163 *
164 * Pay attention to the fact that "*" (resp. "?") generally
165 * corresponds to "%" (resp. "_") in primitive LIKE of SQL. The
166 * values "%", "_", "\" should in the user request should
167 * respectively be escaped as "\%", "\_" and "\\".
168 *
169 * This matching must be case sensitive: The special case of PN VR
170 * is taken into consideration by normalizing the query string in
171 * method "ServerIndex::LookupIdentifierWildcard()".
172 **/
173 virtual void LookupIdentifierWildcard(std::list<int64_t>& target,
174 const DicomTag& tag,
175 const std::string& value) = 0;
176
154 virtual bool LookupMetadata(std::string& target, 177 virtual bool LookupMetadata(std::string& target,
155 int64_t id, 178 int64_t id,
156 MetadataType type) = 0; 179 MetadataType type) = 0;
157 180
158 virtual bool LookupParent(int64_t& parentId, 181 virtual bool LookupParent(int64_t& parentId,