uiacceltk/hitchcock/coretoolkit/inc/HuiFxEffect.h
branchRCL_3
changeset 9 3ac8bf5c5014
parent 8 46927d61fef3
child 13 3a60ebea00d0
equal deleted inserted replaced
8:46927d61fef3 9:3ac8bf5c5014
    71 
    71 
    72 /** EndGroup request has been received and this effect has drawn itself once and it is
    72 /** EndGroup request has been received and this effect has drawn itself once and it is
    73  *  now waiting for the others in the group to be drawn.
    73  *  now waiting for the others in the group to be drawn.
    74  */
    74  */
    75 const TInt KHuiFxReadyAndWaitingGroupToStartSyncronized = 0x800;
    75 const TInt KHuiFxReadyAndWaitingGroupToStartSyncronized = 0x800;
       
    76 
       
    77 /**
       
    78  * This applies only to group effects. Visual has drawn one frame after the 
       
    79  * effect was added to the visual.
       
    80  */
       
    81 const TInt KHuiReadyToDrawNotified = 0x1000;
       
    82 
       
    83 /**
       
    84  * Effect observer has been called once. 
       
    85  */
       
    86 const TInt KHuiEffectObserverNotified = 0x2000;
    76 
    87 
    77 class MAlfGfxEffectObserver
    88 class MAlfGfxEffectObserver
    78     {
    89     {
    79     public:
    90     public:
    80     	/**
    91     	/**
    94     IMPORT_C TBool Draw(CHuiGc& aGc, const TRect& aDisplayRect);
   105     IMPORT_C TBool Draw(CHuiGc& aGc, const TRect& aDisplayRect);
    95     IMPORT_C CHuiFxEngine& Engine() const;
   106     IMPORT_C CHuiFxEngine& Engine() const;
    96     IMPORT_C TBool VisualArea(TRect& aRect) const;
   107     IMPORT_C TBool VisualArea(TRect& aRect) const;
    97     IMPORT_C TBool Changed();
   108     IMPORT_C TBool Changed();
    98     IMPORT_C void SetEffectEndObserver( MAlfGfxEffectObserver* aEffectEndObserver, TInt aHandle );
   109     IMPORT_C void SetEffectEndObserver( MAlfGfxEffectObserver* aEffectEndObserver, TInt aHandle );
    99     void NotifyEffectEndObserver();
   110 
       
   111     /**
       
   112 	 * NotifyEffectEndObserver
       
   113 	 *
       
   114 	 * @return	ETrue, if effect observer was notified.
       
   115 	 *			EFalse, if effect does not have observer, but other notification is required (alf application
       
   116 	 *                  effects.
       
   117 	 */
       
   118     TBool NotifyEffectEndObserver();
   100 
   119 
   101     IMPORT_C TBool IsAnimated() const;
   120     IMPORT_C TBool IsAnimated() const;
   102     IMPORT_C TBool IsTransformed() const;
   121     IMPORT_C TBool IsTransformed() const;
   103     TBool IsSemitransparent() const;
   122     TBool IsSemitransparent() const;
   104     
   123     
   151      */
   170      */
   152     TBool CachedDraw(CHuiGc& aGc, const TRect& aDisplayRect, TBool aRefreshCachedRenderTarget, TBool aOpaque, const TRegion& aClipRegion, TInt aAlpha = 255);
   171     TBool CachedDraw(CHuiGc& aGc, const TRect& aDisplayRect, TBool aRefreshCachedRenderTarget, TBool aOpaque, const TRegion& aClipRegion, TInt aAlpha = 255);
   153     TBool CachedDraw(CHuiGc& aGc, const TRect& aDisplayRect, TBool aRefreshCachedRenderTarget, TBool aOpaque);
   172     TBool CachedDraw(CHuiGc& aGc, const TRect& aDisplayRect, TBool aRefreshCachedRenderTarget, TBool aOpaque);
   154 
   173 
   155     void FxmlVisualInputs(RArray<THuiFxVisualSrcType> &aArray);
   174     void FxmlVisualInputs(RArray<THuiFxVisualSrcType> &aArray);
   156 
   175     
       
   176 	TBool FxmlUsesOpaqueHint() const;
       
   177 	
   157     TInt Handle() const
   178     TInt Handle() const
   158         {
   179         {
   159         return iHandle;    
   180         return iHandle;    
   160         }
   181         }
   161 private:
   182 private:
   187     // See also KHuiFxWaitGroupSyncronization
   208     // See also KHuiFxWaitGroupSyncronization
   188     TInt iGroupId;
   209     TInt iGroupId;
   189 	
   210 	
   190     TInt iFramesDrawn;
   211     TInt iFramesDrawn;
   191     TReal32 iElapsedTime;
   212     TReal32 iElapsedTime;
   192     TBool iNotifiedEffectReady;
       
   193     };
   213     };
   194 
   214 
   195 #endif /*HUIFXEFFECT_H_*/
   215 #endif /*HUIFXEFFECT_H_*/