Artec 3D Scanning SDK  2.0
IProgressInfo.h
Go to the documentation of this file.
1 /********************************************************************
2 *
3 * Project Artec 3D Scanning SDK
4 *
5 * Purpose: Progress notifier interface for IO operations
6 *
7 * Copyright: Artec Group
8 *
9 ********************************************************************/
10 
11 #ifndef _IPROGRESSINFO_H_
12 #define _IPROGRESSINFO_H_
13 
15 
16 namespace artec { namespace sdk { namespace base
17 {
18 
20 {
21  DetailsInfo_NoStep, /* singe action algorithm */
22 
23  DetailsInfo_Step1_From1, /* numerated step info */
24 
27 
31 
36 
42 
49 
57 
66 
67  DetailsInfo_Geometry, /* save/load geometry data */
68  DetailsInfo_Textures, /* save/load texture data */
69 
70  DetailsInfo_ForceDword = 0x7fffffff /* force 32-bit size enum */
71 };
72 
73 /** Interface for a progress notification listener.
74 * Implement and use it to report about the current step of a job.
75 */
76 class IProgressInfo : public IProgress
77 {
78 public:
79  /** Job progress notification callback. Implement it in your class.
80  * @param details Accepts DetailsInfo enum value representing details of changing the current state.
81  */
82  virtual void notify(DetailsInfo details) = 0;
83 };
84 
85 /**
86 * For inheritance, this class is preferred over IProgressInfo.
87 * This class implements reference counting in order to simplify creation of the actual IProgressInfo implementation.
88 */
89 class ProgressInfoBase : public RefBase<IProgressInfo>
90 {
91 };
92 
93 } } } // namespace artec::sdk::base
94 
95 #endif // _IPROGRESSINFO_H_
For inheritance, this class is preferred over IProgressInfo.
Definition: IProgressInfo.h:89
virtual void notify(DetailsInfo details)=0
Job progress notification callback.
Interface for a progress listener.
Definition: IProgress.h:22
Interface for a progress notification listener.
Definition: IProgressInfo.h:76
Implementation of IRef interface. To create your own class, inherit it from RefBase.
Definition: RefBase.h:75