Go to the documentation of this file.
52 #ifndef __PCL_StatusMonitor_h
53 #define __PCL_StatusMonitor_h
66 class PCL_CLASS StatusMonitor;
145 virtual int Initialized(
const StatusMonitor& monitor )
const = 0;
162 virtual int Updated(
const StatusMonitor& monitor )
const = 0;
181 virtual int Completed(
const StatusMonitor& monitor )
const = 0;
190 virtual void InfoUpdated(
const StatusMonitor& monitor )
const = 0;
339 ++m_initDisableCount;
353 --m_initDisableCount;
365 return m_initDisableCount <= 0;
376 return m_initialized;
416 if ( m_callback !=
nullptr )
417 m_callback->InfoUpdated( *
this );
436 if ( ++m_count == m_total || m_needsUpdate )
450 if ( m_count > m_total )
452 if ( m_needsUpdate || m_count == m_total )
502 m_callback = callback;
571 return s_msRefreshRate;
589 static void SetRefreshRate(
unsigned ms );
594 void* m_thread =
nullptr;
595 bool m_initialized =
false;
596 bool m_completed =
false;
597 bool m_aborted =
false;
598 bool m_needsUpdate =
false;
599 int m_initDisableCount = 0;
605 static unsigned s_msRefreshRate;
612 friend class MonitorDispatcherThread;
619 #endif // __PCL_StatusMonitor_h
StatusMonitor(const StatusMonitor &x)
static unsigned RefreshRate()
bool IsInitializationEnabled() const
An asynchronous status monitoring system.
void SetInfo(const String &s)
Automatic recovery of status monitoring callbacks.
virtual ~StatusCallback()
Provides status monitoring callback functions.
void EnableInitialization()
const StatusCallback * Callback() const
StatusCallback * Callback()
bool IsInitialized() const
void DisableInitialization()
void SetCallback(StatusCallback *callback)