SourceXtractorPlusPlus 0.21
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
ProgressMediator.cpp
Go to the documentation of this file.
1
17/*
18 * Progress.cpp
19 *
20 * Created on: Sep 07, 2018
21 * Author: Alejandro Alvarez Ayllon
22 */
23
25
26namespace SourceXtractor {
27
49
64
79
81 m_segmentation_progress{0, 0}, m_detected{0}, m_deblended{0}, m_measured{0},
82 m_segmentation_listener{std::make_shared<ProgressCounter>(*this, m_segmentation_progress, m_mutex)},
83 m_detection_listener{std::make_shared<SourceCounter>(*this, m_detected)},
84 m_deblending_listener{std::make_shared<GroupCounter>(*this, m_deblended)},
85 m_measurement_listener{std::make_shared<GroupCounter>(*this, m_measured)} {
86}
87
91
95
99
103
113
118
119} // end SourceXtractor
void notifyObservers(const T &message) const
Definition Observable.h:71
Observer interface to be used with Observable to implement the Observer pattern.
Definition Observable.h:38
void handleMessage(const SourceGroupInterface &group) override
GroupCounter(ProgressMediator &progress_listener, std::atomic_int &counter)
void handleMessage(const SegmentationProgress &progress) override
ProgressCounter(ProgressMediator &progress_listener, SegmentationProgress &segmentation_progress, std::mutex &mutex)
void handleMessage(const SourceInterface &) override
SourceCounter(ProgressMediator &progress_listener, std::atomic_int &counter)
std::shared_ptr< segmentation_observer_t > m_segmentation_listener
SegmentationProgress m_segmentation_progress
std::shared_ptr< group_observer_t > m_measurement_listener
std::shared_ptr< group_observer_t > & getDeblendingObserver(void)
std::shared_ptr< group_observer_t > m_deblending_listener
std::shared_ptr< segmentation_observer_t > & getSegmentationObserver(void)
std::shared_ptr< source_observer_t > m_detection_listener
std::shared_ptr< source_observer_t > & getDetectionObserver(void)
std::shared_ptr< group_observer_t > & getMeasurementObserver(void)
Defines the interface used to group sources.
The SourceInterface is an abstract "source" that has properties attached to it.
T lock(T... args)
T make_shared(T... args)
STL namespace.
Used to notify observers of the progress of the processing of the image.