Mercurial > hg > orthanc-stone
comparison OrthancStone/Sources/Toolbox/SortedFrames.h @ 1630:78509230f0d7
SortedFrames sharing code with CoordinateSystem3D
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 09 Nov 2020 18:01:32 +0100 |
parents | b2941196cabf |
children | 960bb5fcc440 |
comparison
equal
deleted
inserted
replaced
1629:7fc8a3ff09ee | 1630:78509230f0d7 |
---|---|
20 **/ | 20 **/ |
21 | 21 |
22 | 22 |
23 #pragma once | 23 #pragma once |
24 | 24 |
25 #include "CoordinateSystem3D.h" | |
25 #include "LinearAlgebra.h" | 26 #include "LinearAlgebra.h" |
26 | 27 |
27 namespace OrthancStone | 28 namespace OrthancStone |
28 { | 29 { |
29 class SortedFrames : public boost::noncopyable | 30 class SortedFrames : public boost::noncopyable |
30 { | 31 { |
31 private: | 32 private: |
32 class Instance : public boost::noncopyable | 33 class Instance : public boost::noncopyable |
33 { | 34 { |
34 private: | 35 private: |
35 bool hasPosition_; | 36 Orthanc::DicomMap tags_; |
36 Orthanc::DicomMap tags_; | 37 std::string sopInstanceUid_; |
37 std::string sopInstanceUid_; | 38 unsigned int numberOfFrames_; |
38 unsigned int numberOfFrames_; | 39 CoordinateSystem3D geometry_; |
39 Vector normal_; // Only used in "Sort()" | 40 bool monochrome1_; |
40 Vector position_; // Only used in "Sort()" | |
41 bool monochrome1_; | |
42 | 41 |
43 public: | 42 public: |
44 explicit Instance(const Orthanc::DicomMap& tags); | 43 explicit Instance(const Orthanc::DicomMap& tags); |
45 | 44 |
46 const Orthanc::DicomMap& GetTags() const | 45 const Orthanc::DicomMap& GetTags() const |
56 unsigned int GetNumberOfFrames() const | 55 unsigned int GetNumberOfFrames() const |
57 { | 56 { |
58 return numberOfFrames_; | 57 return numberOfFrames_; |
59 } | 58 } |
60 | 59 |
61 bool HasPosition() const | 60 const CoordinateSystem3D& GetGeometry() const |
62 { | 61 { |
63 return hasPosition_; | 62 return geometry_; |
64 } | 63 } |
65 | |
66 const Vector& GetNormal() const; | |
67 | |
68 const Vector& GetPosition() const; | |
69 | 64 |
70 bool IsMonochrome1() const | 65 bool IsMonochrome1() const |
71 { | 66 { |
72 return monochrome1_; | 67 return monochrome1_; |
73 } | 68 } |
162 const std::string& GetSopInstanceUid(size_t instanceIndex) const | 157 const std::string& GetSopInstanceUid(size_t instanceIndex) const |
163 { | 158 { |
164 return GetInstance(instanceIndex).GetSopInstanceUid(); | 159 return GetInstance(instanceIndex).GetSopInstanceUid(); |
165 } | 160 } |
166 | 161 |
162 const CoordinateSystem3D& GetInstanceGeometry(size_t instanceIndex) const | |
163 { | |
164 return GetInstance(instanceIndex).GetGeometry(); | |
165 } | |
166 | |
167 bool LookupSopInstanceUid(size_t& instanceIndex, | 167 bool LookupSopInstanceUid(size_t& instanceIndex, |
168 const std::string& sopInstanceUid) const; | 168 const std::string& sopInstanceUid) const; |
169 | 169 |
170 bool IsSorted() const | 170 bool IsSorted() const |
171 { | 171 { |