Mercurial > hg > orthanc
comparison OrthancServer/Sources/Database/StatelessDatabaseOperations.h @ 5719:f488fc5c972a find-refactoring-clean
removed StatelessDatabaseOperations::ExpandedResource
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 13 Jul 2024 01:01:50 +0200 |
parents | 77875b51cf95 |
children | 3f97590cc0c9 |
comparison
equal
deleted
inserted
replaced
5718:77e1ff7f90c7 | 5719:f488fc5c972a |
---|---|
37 { | 37 { |
38 class DatabaseLookup; | 38 class DatabaseLookup; |
39 class ParsedDicomFile; | 39 class ParsedDicomFile; |
40 struct ServerIndexChange; | 40 struct ServerIndexChange; |
41 | 41 |
42 class ExpandedResource : public boost::noncopyable | |
43 { | |
44 private: | |
45 std::string id_; | |
46 ResourceType level_; | |
47 DicomMap tags_; // all main tags and main sequences from DB | |
48 | |
49 public: | |
50 std::string mainDicomTagsSignature_; | |
51 std::string parentId_; | |
52 std::list<std::string> childrenIds_; | |
53 std::map<MetadataType, std::string> metadata_; | |
54 std::string anonymizedFrom_; | |
55 std::string modifiedFrom_; | |
56 std::string lastUpdate_; | |
57 std::set<DicomTag> missingRequestedTags_; | |
58 | |
59 // for patients/studies/series | |
60 bool isStable_; | |
61 | |
62 // for series only | |
63 int expectedNumberOfInstances_; | |
64 std::string status_; | |
65 | |
66 // for instances only | |
67 size_t fileSize_; | |
68 std::string fileUuid_; | |
69 int indexInSeries_; | |
70 | |
71 // New in Orthanc 1.12.0 | |
72 std::set<std::string> labels_; | |
73 | |
74 public: | |
75 // TODO - Cleanup | |
76 ExpandedResource() : | |
77 level_(ResourceType_Instance), | |
78 isStable_(false), | |
79 expectedNumberOfInstances_(0), | |
80 fileSize_(0), | |
81 indexInSeries_(0) | |
82 { | |
83 } | |
84 | |
85 void SetResource(ResourceType level, | |
86 const std::string& id) | |
87 { | |
88 level_ = level; | |
89 id_ = id; | |
90 } | |
91 | |
92 const std::string& GetPublicId() const | |
93 { | |
94 return id_; | |
95 } | |
96 | |
97 ResourceType GetLevel() const | |
98 { | |
99 return level_; | |
100 } | |
101 | |
102 DicomMap& GetMainDicomTags() | |
103 { | |
104 return tags_; | |
105 } | |
106 | |
107 const DicomMap& GetMainDicomTags() const | |
108 { | |
109 return tags_; | |
110 } | |
111 }; | |
112 | |
113 enum ExpandResourceFlags | |
114 { | |
115 ExpandResourceFlags_None = 0, | |
116 // used to fetch from DB and for output | |
117 ExpandResourceFlags_IncludeMetadata = (1 << 0), | |
118 ExpandResourceFlags_IncludeChildren = (1 << 1), | |
119 ExpandResourceFlags_IncludeMainDicomTags = (1 << 2), | |
120 ExpandResourceFlags_IncludeLabels = (1 << 3), | |
121 | |
122 // only used for output | |
123 ExpandResourceFlags_IncludeAllMetadata = (1 << 4), // new in Orthanc 1.12.4 | |
124 ExpandResourceFlags_IncludeIsStable = (1 << 5), // new in Orthanc 1.12.4 | |
125 | |
126 ExpandResourceFlags_DefaultExtract = (ExpandResourceFlags_IncludeMetadata | | |
127 ExpandResourceFlags_IncludeChildren | | |
128 ExpandResourceFlags_IncludeMainDicomTags | | |
129 ExpandResourceFlags_IncludeLabels), | |
130 | |
131 ExpandResourceFlags_DefaultOutput = (ExpandResourceFlags_IncludeMetadata | | |
132 ExpandResourceFlags_IncludeChildren | | |
133 ExpandResourceFlags_IncludeMainDicomTags | | |
134 ExpandResourceFlags_IncludeLabels | | |
135 ExpandResourceFlags_IncludeIsStable) | |
136 }; | |
137 | |
138 class StatelessDatabaseOperations : public boost::noncopyable | 42 class StatelessDatabaseOperations : public boost::noncopyable |
139 { | 43 { |
140 public: | 44 public: |
141 typedef std::list<FileInfo> Attachments; | 45 typedef std::list<FileInfo> Attachments; |
142 typedef std::map<std::pair<ResourceType, MetadataType>, std::string> MetadataMap; | 46 typedef std::map<std::pair<ResourceType, MetadataType>, std::string> MetadataMap; |
621 | 525 |
622 | 526 |
623 void Apply(IReadOnlyOperations& operations); | 527 void Apply(IReadOnlyOperations& operations); |
624 | 528 |
625 void Apply(IReadWriteOperations& operations); | 529 void Apply(IReadWriteOperations& operations); |
626 | |
627 bool ExpandResource(ExpandedResource& target, | |
628 const std::string& publicId, | |
629 ResourceType level, | |
630 const std::set<DicomTag>& requestedTags, | |
631 ExpandResourceFlags expandFlags); | |
632 | 530 |
633 void GetAllMetadata(std::map<MetadataType, std::string>& target, | 531 void GetAllMetadata(std::map<MetadataType, std::string>& target, |
634 const std::string& publicId, | 532 const std::string& publicId, |
635 ResourceType level); | 533 ResourceType level); |
636 | 534 |