//////////////////////////////////////////////////////////////////////////////// /** \file \brief \ru Индикатор прогресса выполнения. \en A run progress indicator. \~ */ //////////////////////////////////////////////////////////////////////////////// #ifndef __TOOL_PROGRESS_INDICATOR_H #define __TOOL_PROGRESS_INDICATOR_H #include //------------------------------------------------------------------------------ /** \brief \ru Индикатор прогресса выполнения. \en A run progress indicator. \~ \details \ru Интерфейс индикатора прогресса выполнения. \n \en Interface of the execution progress indicator. \n \~ \note \ru Геометрическое ядро обеспечивает потокобезопасность использования индикатора прогресса. Пользователь должен обеспечить потокобезопасность внутренней реализации IfProgressIndicator. \en The geometric kernel provides the thread-safe use of the progress indicator. The user is responsible for thread-safety of IfProgressIndicator internal implementation. \~ \ingroup Base_Tools */ // --- struct IfProgressIndicator { /// \ru Инициализация. \en Initialization. virtual void StartProgress ( ptrdiff_t minValue, ptrdiff_t maxValue, const TCHAR * lpszNewText, bool resetTxt, bool aPIcall = false ) = 0; /// \ru Установка текущего значения. \en Setting of the current value. virtual void SetProgress ( ptrdiff_t nCurr, const TCHAR * lpszNewText, bool resetTxt, bool aPIcall = false ) = 0; /// \ru Остановить индикатор. \en Stop the indicator. virtual void StopProgress ( const TCHAR * lpszNewText, bool resetTxt, bool aPIcall = false ) = 0; /// \ru Получить строку из индикатора. \en Get the string from the indicator. virtual const TCHAR * GetStrBuild () const = 0; /// \ru Установить строку в индикатор. \en Set the string to the indicator. virtual void StBarSetMessageText( const TCHAR * msg, bool aPIcall = false ) = 0; // \ru Переименовано для отличия от аналогичных функций в окне, процессе и приложении \en Renamed to make different the similar functions in window, in process and in application /// \ru Запущен ли какой-нибудь процесс с индикатором. \en Whether any process with indicator is run. virtual bool IsProgressStarted() const = 0; }; #endif // __TOOL_PROGRESS_INDICATOR_H