--- a/uiaccelerator_plat/alf_visual_api/inc/alf/alfcompositionutility.h Fri Apr 16 15:56:24 2010 +0300
+++ b/uiaccelerator_plat/alf_visual_api/inc/alf/alfcompositionutility.h Mon May 03 13:22:43 2010 +0300
@@ -295,4 +295,40 @@
CAlfCompositionSourceData* iData;
};
+NONSHARABLE_CLASS(CAlfEffectObserver): public CBase
+ {
+public:
+
+ class MAlfEffectObserver
+ {
+ public:
+ /** bit field */
+ enum{
+ EAlfEffectStarted = 0x1,
+ EAlfEffectComplete = 0x2
+ };
+ virtual void HandleEffectCallback(TInt aType, TInt aHandle, TInt aStatus) = 0;
+ };
+
+ IMPORT_C static CAlfEffectObserver* NewL();
+ IMPORT_C ~CAlfEffectObserver();
+
+ /**
+ * Asks the number of active effects
+ * @return error code or number of active effects (>= 0).
+ */
+ IMPORT_C TInt ActiveEffectsCount();
+
+ /**
+ * Subscribe callback for a handle
+ * @leave system wide error code
+ */
+ IMPORT_C void SubscribeCallbackL(MAlfEffectObserver* aObserver, TInt aHandle, TInt aType = MAlfEffectObserver::EAlfEffectComplete );
+
+private:
+ CAlfEffectObserver();
+ class CAlfEffectObserverData;
+ CAlfEffectObserverData* iData;
+ };
+
#endif // #define __ALFCOMPOSITIONUTILITY_H__