|
1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
2 // All rights reserved. |
|
3 // This component and the accompanying materials are made available |
|
4 // under the terms of "Eclipse Public License v1.0" |
|
5 // which accompanies this distribution, and is available |
|
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
7 // |
|
8 // Initial Contributors: |
|
9 // Nokia Corporation - initial contribution. |
|
10 // |
|
11 // Contributors: |
|
12 // |
|
13 // Description: |
|
14 // |
|
15 |
|
16 /** |
|
17 @file |
|
18 @publishedAll |
|
19 @released |
|
20 */ |
|
21 |
|
22 #ifndef __IMAGE_PROCESSOR_OBSERVER_H__ |
|
23 #define __IMAGE_PROCESSOR_OBSERVER_H__ |
|
24 |
|
25 #include <e32base.h> |
|
26 |
|
27 namespace ImageProcessor |
|
28 { |
|
29 |
|
30 class CImgProcessor; |
|
31 |
|
32 /** |
|
33 Plugin API for the observer of CImgProcessor. |
|
34 When the CImgProcessor is set to EOptionNone, which means effects, geometric operations and rendering |
|
35 are applied asynchronously. After certain operations such as initialization or rendering finished, or after each iteration |
|
36 of operation, the certain function will be called, so that user can perform corresponding response. |
|
37 |
|
38 @see TEvent |
|
39 @publishedAll |
|
40 @released |
|
41 */ |
|
42 class MImgProcessorObserver |
|
43 { |
|
44 public: |
|
45 /** |
|
46 The derived class must provide an implementation to perform actions after ImageProcessor complete its initialization |
|
47 |
|
48 @param aImageProcessor |
|
49 The CImgProcessor which has finished the initialization |
|
50 @param aError |
|
51 any error happened in the CImgProcessor initialize process |
|
52 */ |
|
53 virtual void ImageProcessorInitializingComplete(CImgProcessor& aImageProcessor, TInt aError) = 0; |
|
54 |
|
55 /** |
|
56 The derived class must provide an implementation to perform actions after the preview of ImageProcessor complete its initialization |
|
57 |
|
58 @param aImageProcessor |
|
59 The CImgProcessor which has finished the initialization of its prview |
|
60 @param aPreviewId |
|
61 the id of the preview which has finished the initialization |
|
62 @param aError |
|
63 any error happened in the CImgProcessor preview initialize process |
|
64 */ |
|
65 virtual void ImageProcessorPreviewInitializingComplete(CImgProcessor& aImageProcessor, TInt aPreviewId, TInt aError) = 0; |
|
66 |
|
67 /** |
|
68 The derived class must provide an implementation to perform actions after ImageProcessor complete its action of image processing |
|
69 |
|
70 @param aImageProcessor |
|
71 The CImgProcessor which has finished the rendering |
|
72 @param aError |
|
73 any error happened in the CImgProcessor rendering process |
|
74 */ |
|
75 virtual void ImageProcessingComplete(CImgProcessor& aImageProcessor, TInt aError) = 0; |
|
76 |
|
77 /** |
|
78 The derived class must provide an implementation to perform actions after the preview of ImageProcessor complete its rendering process |
|
79 |
|
80 @param aImageProcessor |
|
81 The CImgProcessor which has finished the rendering of its prview |
|
82 @param aPreviewId |
|
83 the id of the preview which has finished the rendering |
|
84 @param aError |
|
85 any error happened in the CImgProcessor preview rendering process |
|
86 */ |
|
87 virtual void ImageProcessorPreviewRenderingComplete(CImgProcessor& aImageProcessor, TInt aPreviewId, TInt aError) = 0; |
|
88 |
|
89 /** |
|
90 During image processing, after each iteration, this function will be notified and |
|
91 the derived class must provide an implementation to perform actions (optional) such as showing messages to response. |
|
92 |
|
93 @param aImageProcessor |
|
94 The current CImgProcessor |
|
95 @param aEventId |
|
96 the event id of the current iteration, which is defined in imageprocessor.h as TEvent enumeration, |
|
97 could be EEventInitializing, EEventProcessing, EEventRendering, EEventPreviewInitializing or EEventPreviewRendering, |
|
98 @param aUid |
|
99 The value depends on aEventId, and reserved for future purpose |
|
100 @param aId |
|
101 The value depends on aEventId, for example, if aEventId is EEventPreviewRendering, aId will be the id of the preview. |
|
102 */ |
|
103 virtual void ImageProcessorEvent(CImgProcessor& aImageProcessor, TInt aEventId, TUid aUid, TInt aId) = 0; |
|
104 }; |
|
105 |
|
106 } //namespace ImageProcessor |
|
107 |
|
108 #endif //__IMAGE_PROCESSOR_OBSERVER_H__ |