Mercurial > hg > orthanc-stone
comparison Framework/Toolbox/DicomInstanceParameters.cpp @ 982:3f6e5a38c88f toa2019090601
Merge
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Fri, 06 Sep 2019 09:39:18 +0200 |
parents | 8e497a4e3d96 |
children | 1f74bc3459ba |
comparison
equal
deleted
inserted
replaced
981:c20dbaab360c | 982:3f6e5a38c88f |
---|---|
174 } | 174 } |
175 else | 175 else |
176 { | 176 { |
177 expectedPixelFormat_ = Orthanc::PixelFormat_Grayscale16; | 177 expectedPixelFormat_ = Orthanc::PixelFormat_Grayscale16; |
178 } | 178 } |
179 | |
180 // This computes the "IndexInSeries" metadata from Orthanc (check | |
181 // out "Orthanc::ServerIndex::Store()") | |
182 hasIndexInSeries_ = ( | |
183 dicom.ParseUnsignedInteger32(indexInSeries_, Orthanc::DICOM_TAG_INSTANCE_NUMBER) || | |
184 dicom.ParseUnsignedInteger32(indexInSeries_, Orthanc::DICOM_TAG_IMAGE_INDEX)); | |
179 } | 185 } |
180 | 186 |
181 | 187 |
182 CoordinateSystem3D DicomInstanceParameters::Data::GetFrameGeometry(unsigned int frame) const | 188 CoordinateSystem3D DicomInstanceParameters::Data::GetFrameGeometry(unsigned int frame) const |
183 { | 189 { |
396 { | 402 { |
397 std::auto_ptr<Orthanc::ImageAccessor> converted(ConvertToFloat(pixelData)); | 403 std::auto_ptr<Orthanc::ImageAccessor> converted(ConvertToFloat(pixelData)); |
398 return new LookupTableTextureSceneLayer(*converted); | 404 return new LookupTableTextureSceneLayer(*converted); |
399 } | 405 } |
400 } | 406 } |
407 | |
408 | |
409 unsigned int DicomInstanceParameters::GetIndexInSeries() const | |
410 { | |
411 if (data_.hasIndexInSeries_) | |
412 { | |
413 return data_.indexInSeries_; | |
414 } | |
415 else | |
416 { | |
417 LOG(ERROR) << "DicomInstanceParameters::GetIndexInSeries(): !data_.hasIndexInSeries_"; | |
418 throw Orthanc::OrthancException(Orthanc::ErrorCode_BadSequenceOfCalls); | |
419 } | |
420 } | |
401 } | 421 } |