MrSID Decode SDK for LiDAR Reference Manual  1.1.2.4045
ProgressDelegate.h
Go to the documentation of this file.
1 /* //////////////////////////////////////////////////////////////////////////
2 // //
3 // This code is Copyright (c) 2008-2010 LizardTech, Inc, 1008 Western //
4 // Avenue, Suite 200, Seattle, WA 98104. Unauthorized use or distribution //
5 // prohibited. Access to and use of this code is permitted only under //
6 // license from LizardTech, Inc. Portions of the code are protected by //
7 // US and foreign patents and other filings. All Rights Reserved. //
8 // //
10 /* PUBLIC */
11 
12 #ifndef __LIDAR_PROGRESS_DELEGATE_H__
13 #define __LIDAR_PROGRESS_DELEGATE_H__
14 
15 #include "lidar/Base.h"
16 
17 LT_BEGIN_LIDAR_NAMESPACE
18 
30 {
31  DISABLE_COPY(ProgressDelegate);
32 public:
33  virtual ~ProgressDelegate(void);
34 
44  virtual void reportProgress(double progress, const char *message) = 0;
53  virtual bool getCancelled(void) = 0;
54 
63  void setTotal(double total);
72  void updateCompleted(double delta, const char *message);
73 
81  double getProgress(void) const;
82 
83 protected:
84  ProgressDelegate(void);
85 
86 private:
87  double m_completed;
88  double m_total;
89 };
90 
92 {
93  DISABLE_COPY(PercentProgressDelegate);
94 public:
97 
98  void reportProgress(double fractionDone, const char *message);
99  bool getCancelled(void);
100 
101  void setCancelled(bool cancel);
102 private:
103  int m_lastUpdate;
104  const char *m_lastMessage;
105  bool m_cancelled;
106 };
107 
108 LT_END_LIDAR_NAMESPACE
109 #endif // __LIDAR_PROGRESS_DELEGATE_H__
virtual ~ProgressDelegate(void)
void reportProgress(double fractionDone, const char *message)
Displays the progress of the operation.
double getProgress(void) const
Get the fraction the work completed.
ProgressDelegate is the base class for progress and interrupt reporting.
void updateCompleted(double delta, const char *message)
Update the amount of work that has been done.
void setTotal(double total)
Set the total amount of work that must be done.
bool getCancelled(void)
Indicate weather the operation should be cancelled.
virtual void reportProgress(double progress, const char *message)=0
Displays the progress of the operation.
virtual bool getCancelled(void)=0
Indicate weather the operation should be cancelled.
void setCancelled(bool cancel)

LizardTech