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 {