Mercurial > hg > orthanc
diff OrthancServer/Sources/Database/FindRequest.cpp @ 5568:b0b5546f1b9f find-refactoring
find refactor: re-use existing code. /studies?expand is almost fully implemented with new code
author | Alain Mazy <am@orthanc.team> |
---|---|
date | Thu, 25 Apr 2024 09:22:07 +0200 |
parents | f3562c1a150d |
children | 8b32213af23e |
line wrap: on
line diff
--- a/OrthancServer/Sources/Database/FindRequest.cpp Tue Apr 23 16:49:44 2024 +0200 +++ b/OrthancServer/Sources/Database/FindRequest.cpp Thu Apr 25 09:22:07 2024 +0200 @@ -73,11 +73,6 @@ FindRequest::~FindRequest() { - for (std::deque<FilterConstraint*>::iterator it = filterConstraints_.begin(); it != filterConstraints_.end(); ++it) - { - assert(*it != NULL); - delete *it; - } for (std::deque<Ordering*>::iterator it = ordering_.begin(); it != ordering_.end(); ++it) { @@ -86,30 +81,20 @@ } } - - void FindRequest::AddFilterConstraint(FilterConstraint* constraint /* takes ownership */) + void FindRequest::AddDicomTagConstraint(const DicomTagConstraint& constraint) { - if (constraint == NULL) - { - throw OrthancException(ErrorCode_NullPointer); - } - else - { - filterConstraints_.push_back(constraint); - } + dicomTagConstraints_.push_back(constraint); } - - const FindRequest::FilterConstraint& FindRequest::GetFilterConstraint(size_t index) const + const DicomTagConstraint& FindRequest::GetDicomTagConstraint(size_t index) const { - if (index >= filterConstraints_.size()) + if (index >= dicomTagConstraints_.size()) { throw OrthancException(ErrorCode_ParameterOutOfRange); } else { - assert(filterConstraints_[index] != NULL); - return *filterConstraints_[index]; + return dicomTagConstraints_[index]; } }