Add file support to DICOMDirectoryHelper

This commit is contained in:
Krad
2022-02-14 09:23:37 +08:00
parent 4fc5485161
commit 5e9b49d3d1

View File

@@ -127,8 +127,12 @@ void DICOMDirectoryHelper::getFileProperty(const std::string &path, DICOMFileMap
void DICOMDirectoryHelper::Update() {
std::unordered_map<std::string, std::unordered_map<std::string,DICOMFileRefValue>> series;
if (!this->dirName.empty()){
getDirectoryProperties(this->dirName.c_str(), series);
}
else{
getFileProperty(this->fileName.c_str(), series);
}
//sort files
for (auto &pair : series) {
auto iterator = std::find_if(seriesProperties.begin(),seriesProperties.end(),
@@ -143,7 +147,6 @@ void DICOMDirectoryHelper::Update() {
// printf("%s\r\n",f.second.FilePath.c_str());
vector.emplace_back(std::move(f.second));
}
std::sort(vector.begin(), vector.end(), [](const DICOMFileRefValue &v1, const DICOMFileRefValue &v2) {
return v1.SeriesNumber != v2.SeriesNumber ? (v1.SeriesNumber < v2.SeriesNumber) :
@@ -154,6 +157,7 @@ void DICOMDirectoryHelper::Update() {
// printf("%s\r\n",v.FilePath.c_str());
files->emplace_back(std::move(v.FilePath));
});
}
}
SeriesCount = seriesProperties.size();