Mercurial > hg > orthanc-stone
comparison Framework/Loaders/OrthancSeriesVolumeProgressiveLoader.cpp @ 1064:af4b9cba905f broker
simplify how observers are regsitered, and how callables are created
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 15 Oct 2019 13:46:01 +0200 |
parents | e713f1a99861 |
children | 9d42f89b8c3c |
comparison
equal
deleted
inserted
replaced
1063:3e8f59cefec6 | 1064:af4b9cba905f |
---|---|
420 | 420 |
421 OrthancSeriesVolumeProgressiveLoader::OrthancSeriesVolumeProgressiveLoader(const boost::shared_ptr<DicomVolumeImage>& volume, | 421 OrthancSeriesVolumeProgressiveLoader::OrthancSeriesVolumeProgressiveLoader(const boost::shared_ptr<DicomVolumeImage>& volume, |
422 IOracle& oracle, | 422 IOracle& oracle, |
423 IObservable& oracleObservable) : | 423 IObservable& oracleObservable) : |
424 oracle_(oracle), | 424 oracle_(oracle), |
425 oracleObservable_(oracleObservable), | |
426 active_(false), | 425 active_(false), |
427 simultaneousDownloads_(4), | 426 simultaneousDownloads_(4), |
428 volume_(volume), | 427 volume_(volume), |
429 sorter_(new BasicFetchingItemsSorter::Factory), | 428 sorter_(new BasicFetchingItemsSorter::Factory), |
430 volumeImageReadyInHighQuality_(false) | 429 volumeImageReadyInHighQuality_(false) |
431 { | 430 { |
432 oracleObservable.RegisterObserverCallback( | 431 oracleObservable.RegisterObserver<OrthancSeriesVolumeProgressiveLoader, OrthancRestApiCommand::SuccessMessage> |
433 new Callable<OrthancSeriesVolumeProgressiveLoader, OrthancRestApiCommand::SuccessMessage> | 432 (*this, &OrthancSeriesVolumeProgressiveLoader::LoadGeometry); |
434 (shared_from_this(), &OrthancSeriesVolumeProgressiveLoader::LoadGeometry)); | 433 |
435 | 434 oracleObservable.RegisterObserver<OrthancSeriesVolumeProgressiveLoader, GetOrthancImageCommand::SuccessMessage> |
436 oracleObservable.RegisterObserverCallback( | 435 (*this, &OrthancSeriesVolumeProgressiveLoader::LoadBestQualitySliceContent); |
437 new Callable<OrthancSeriesVolumeProgressiveLoader, GetOrthancImageCommand::SuccessMessage> | 436 |
438 (shared_from_this(), &OrthancSeriesVolumeProgressiveLoader::LoadBestQualitySliceContent)); | 437 oracleObservable.RegisterObserver<OrthancSeriesVolumeProgressiveLoader, GetOrthancWebViewerJpegCommand::SuccessMessage> |
439 | 438 (*this, &OrthancSeriesVolumeProgressiveLoader::LoadJpegSliceContent); |
440 oracleObservable.RegisterObserverCallback( | |
441 new Callable<OrthancSeriesVolumeProgressiveLoader, GetOrthancWebViewerJpegCommand::SuccessMessage> | |
442 (shared_from_this(), &OrthancSeriesVolumeProgressiveLoader::LoadJpegSliceContent)); | |
443 } | 439 } |
444 | 440 |
445 OrthancSeriesVolumeProgressiveLoader::~OrthancSeriesVolumeProgressiveLoader() | 441 OrthancSeriesVolumeProgressiveLoader::~OrthancSeriesVolumeProgressiveLoader() |
446 { | 442 { |
447 oracleObservable_.Unregister(this); | |
448 LOG(TRACE) << "OrthancSeriesVolumeProgressiveLoader::~OrthancSeriesVolumeProgressiveLoader()"; | 443 LOG(TRACE) << "OrthancSeriesVolumeProgressiveLoader::~OrthancSeriesVolumeProgressiveLoader()"; |
449 } | 444 } |
450 | 445 |
451 void OrthancSeriesVolumeProgressiveLoader::SetSimultaneousDownloads(unsigned int count) | 446 void OrthancSeriesVolumeProgressiveLoader::SetSimultaneousDownloads(unsigned int count) |
452 { | 447 { |