Mercurial > hg > orthanc-stone
comparison Framework/Layers/DicomSeriesVolumeSlicer.cpp @ 402:72355b637945
removed VolumeSlicerBase
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 10 Nov 2018 12:34:45 +0100 |
parents | f1c769b3a5c2 |
children | f87f28624b96 b70e9be013e4 |
comparison
equal
deleted
inserted
replaced
401:f1c769b3a5c2 | 402:72355b637945 |
---|---|
38 { | 38 { |
39 EmitMessage(IVolumeSlicer::GeometryReadyMessage(*this)); | 39 EmitMessage(IVolumeSlicer::GeometryReadyMessage(*this)); |
40 } | 40 } |
41 else | 41 else |
42 { | 42 { |
43 VolumeSlicerBase::NotifyGeometryError(); | 43 EmitMessage(IVolumeSlicer::GeometryErrorMessage(*this)); |
44 } | 44 } |
45 } | 45 } |
46 | 46 |
47 void DicomSeriesVolumeSlicer::OnSliceGeometryError(const OrthancSlicesLoader::SliceGeometryErrorMessage& message) | 47 void DicomSeriesVolumeSlicer::OnSliceGeometryError(const OrthancSlicesLoader::SliceGeometryErrorMessage& message) |
48 { | 48 { |
49 VolumeSlicerBase::NotifyGeometryError(); | 49 EmitMessage(IVolumeSlicer::GeometryErrorMessage(*this)); |
50 } | 50 } |
51 | 51 |
52 | 52 |
53 class DicomSeriesVolumeSlicer::RendererFactory : public LayerReadyMessage::IRendererFactory | 53 class DicomSeriesVolumeSlicer::RendererFactory : public LayerReadyMessage::IRendererFactory |
54 { | 54 { |
74 { | 74 { |
75 // first notify that the pixel data of the frame is ready (targeted to, i.e: an image cache) | 75 // first notify that the pixel data of the frame is ready (targeted to, i.e: an image cache) |
76 EmitMessage(FrameReadyMessage(*this, message.GetImage(), | 76 EmitMessage(FrameReadyMessage(*this, message.GetImage(), |
77 message.GetEffectiveQuality(), message.GetSlice())); | 77 message.GetEffectiveQuality(), message.GetSlice())); |
78 | 78 |
79 // then notify that the layer is ready for render | 79 // then notify that the layer is ready for rendering |
80 RendererFactory factory(message); | 80 RendererFactory factory(message); |
81 | |
82 EmitMessage(IVolumeSlicer::LayerReadyMessage(*this, factory, message.GetSlice().GetGeometry())); | 81 EmitMessage(IVolumeSlicer::LayerReadyMessage(*this, factory, message.GetSlice().GetGeometry())); |
83 } | 82 } |
84 | 83 |
85 void DicomSeriesVolumeSlicer::OnSliceImageError(const OrthancSlicesLoader::SliceImageErrorMessage& message) | 84 void DicomSeriesVolumeSlicer::OnSliceImageError(const OrthancSlicesLoader::SliceImageErrorMessage& message) |
86 { | 85 { |
87 VolumeSlicerBase::NotifyLayerError(message.GetSlice().GetGeometry()); | 86 EmitMessage(IVolumeSlicer::LayerErrorMessage(*this, message.GetSlice().GetGeometry())); |
88 } | 87 } |
89 | 88 |
90 | 89 |
91 DicomSeriesVolumeSlicer::DicomSeriesVolumeSlicer(MessageBroker& broker, OrthancApiClient& orthanc) : | 90 DicomSeriesVolumeSlicer::DicomSeriesVolumeSlicer(MessageBroker& broker, OrthancApiClient& orthanc) : |
92 VolumeSlicerBase(broker), | 91 IVolumeSlicer(broker), |
93 IObserver(broker), | 92 IObserver(broker), |
94 loader_(broker, orthanc), | 93 loader_(broker, orthanc), |
95 quality_(SliceImageQuality_FullPng) | 94 quality_(SliceImageQuality_FullPng) |
96 { | 95 { |
97 loader_.RegisterObserverCallback(new Callable<DicomSeriesVolumeSlicer, OrthancSlicesLoader::SliceGeometryReadyMessage>(*this, &DicomSeriesVolumeSlicer::OnSliceGeometryReady)); | 96 loader_.RegisterObserverCallback(new Callable<DicomSeriesVolumeSlicer, OrthancSlicesLoader::SliceGeometryReadyMessage>(*this, &DicomSeriesVolumeSlicer::OnSliceGeometryReady)); |