17 #if !defined(OPENNURBS_PROGRESS_REPORTER_INC_) 18 #define OPENNURBS_PROGRESS_REPORTER_INC_ 84 void SetSynchronousProgressCallbackFunction(
85 void (*callback_function)(ON__UINT_PTR context,
double fraction_complete),
86 ON__UINT_PTR callback_context
114 static void ReportProgress(
116 double fraction_complete
144 static void ReportProgress(
175 static void ReportProgress(
193 static double FractionComplete(
198 void (*m_callback_function)(ON__UINT_PTR,double);
199 ON__UINT_PTR m_callback_context;
200 double m_fraction_complete;
203 double m_previous_callback_fraction_complete;
204 ON__UINT64 m_reserved[4];
207 class ON_CLASS ON_ProgressStepCounter
212 ON_ProgressStepCounter() =
default;
213 ~ON_ProgressStepCounter() =
default;
214 ON_ProgressStepCounter(
const ON_ProgressStepCounter&) =
default;
215 ON_ProgressStepCounter& operator=(
const ON_ProgressStepCounter&) =
default;
233 static ON_ProgressStepCounter Create(
235 unsigned int step_count
256 static ON_ProgressStepCounter Create(
258 unsigned int step_count,
259 double progress_interval_start,
260 double progress_interval_finish,
261 unsigned int maximum_progress_reports
264 static const ON_ProgressStepCounter Empty;
270 void IncrementStep();
278 double Progress()
const;
280 unsigned int Step()
const;
282 unsigned int StepCount()
const;
285 unsigned int m_step_index = 0;
286 unsigned int m_step_count = 0;
287 unsigned int m_step_interval = 0;
288 double m_progress_interval_start = 0.0;
289 double m_progress_interval_finish = 0.0;
Definition: opennurbs_progress_reporter.h:25