tvout/tvoutengine/inc/glxhdmisurfaceupdater.h
changeset 69 45459746d5e8
parent 52 a3a4c0de738e
equal deleted inserted replaced
65:ccee5c4b0de4 69:45459746d5e8
    28 
    28 
    29 // forward decleration
    29 // forward decleration
    30 class CGlxActiveCallBack;
    30 class CGlxActiveCallBack;
    31 class CGlxHdmiDecoderAO;
    31 class CGlxHdmiDecoderAO;
    32 class CImageDecoder;
    32 class CImageDecoder;
    33 class CAlfCompositionSource;
       
    34 class TSurfaceConfiguration;
    33 class TSurfaceConfiguration;
    35 
    34 
    36 class MGlxGenCallback
    35 class MGlxGenCallback
    37     {
    36     {
    38 public:
    37 public:
    53      * @param aWindow RWindow
    52      * @param aWindow RWindow
    54      * @param aImageFile Image File path
    53      * @param aImageFile Image File path
    55      * @param aFsBitmap Fullscreen bitmap (if FS not available,make sure to send grid or default bitmap
    54      * @param aFsBitmap Fullscreen bitmap (if FS not available,make sure to send grid or default bitmap
    56      * else it would appear white screen on TV )
    55      * else it would appear white screen on TV )
    57      * @param aCallBack MGlxGenCallback instance
    56      * @param aCallBack MGlxGenCallback instance
    58      * @param aEffectsOn If Effects should be on
       
    59      */
    57      */
    60     static CGlxHdmiSurfaceUpdater* NewL(RWindow* aWindow, const TDesC& aImageFile, 
    58     static CGlxHdmiSurfaceUpdater* NewL(RWindow* aWindow, const TDesC& aImageFile, 
    61             CFbsBitmap* aFsBitmap, MGlxGenCallback* aCallBack,TBool aEffectsOn);
    59             CFbsBitmap* aFsBitmap, MGlxGenCallback* aCallBack);
    62 
    60 
    63     /**
    61     /**
    64      * Destructor
    62      * Destructor
    65      */
    63      */
    66     ~CGlxHdmiSurfaceUpdater();
    64     ~CGlxHdmiSurfaceUpdater();
   100     /**
    98     /**
   101      * ShiftToPostingMode
    99      * ShiftToPostingMode
   102      */
   100      */
   103     void ShiftToPostingMode();
   101     void ShiftToPostingMode();
   104 
   102 
   105     /**
       
   106      * Fadeing of the Surface
       
   107      * @param aFadeInOut ETrue - FadeIn ( as in gaining brightness )
       
   108      *                   EFalse - FadeOut ( as in loosing brightness ) 
       
   109      */
       
   110     void FadeTheSurface(TBool aFadeInOut);
       
   111 
       
   112 private:
   103 private:
   113     /**
   104     /**
   114      * Constructor 
   105      * Constructor 
   115      * @param aWindow RWindow
   106      * @param aWindow RWindow
   116      * @param aCallBack MGlxGenCallback instance
   107      * @param aCallBack MGlxGenCallback instance
   117      * @param aEffectsOn if effects should be on
   108      */
   118      */
   109     CGlxHdmiSurfaceUpdater(RWindow* aWindow, MGlxGenCallback* aCallBack);
   119     CGlxHdmiSurfaceUpdater(RWindow* aWindow, MGlxGenCallback* aCallBack,TBool aEffectsOn);
       
   120 
   110 
   121     /**
   111     /**
   122      * ConstructL
   112      * ConstructL
   123      * @param aFsBitmap Fullscreen Bitmap
   113      * @param aFsBitmap Fullscreen Bitmap
   124      * @param aImageFile image file path
   114      * @param aImageFile image file path
   233      * InitiateHDMI
   223      * InitiateHDMI
   234      * @param aFsBitmap Fullscreen Bitmap  
   224      * @param aFsBitmap Fullscreen Bitmap  
   235      * @param aImageFile Image path
   225      * @param aImageFile Image path
   236      */
   226      */
   237     void InitiateHdmiL(CFbsBitmap* aFsBitmap,const TDesC& aImageFile);
   227     void InitiateHdmiL(CFbsBitmap* aFsBitmap,const TDesC& aImageFile);
   238 
       
   239     /**
       
   240      * Animate untill loop is complete 
       
   241      */
       
   242     void Animate();
       
   243 
   228 
   244 private:
   229 private:
   245     /// window object
   230     /// window object
   246     RWindow*            iWindow;                    
   231     RWindow*            iWindow;                    
   247     /// FS bitmap
   232     /// FS bitmap
   248     CFbsBitmap*         iFsBitmap;                  
   233     CFbsBitmap*         iFsBitmap;                  
   249     /// callback to the HdmiContainer window
   234     /// callback to the HdmiContainer window
   250     MGlxGenCallback*    iCallBack;                  
   235     MGlxGenCallback*    iCallBack;                  
   251     /// To store the image uri path
   236     /// To store the image uri path
   252     HBufC*              iImagePath;                 
   237     HBufC*              iImagePath;                 
   253     TBool               iEffectsOn;
       
   254 
   238 
   255     /// If the Fs thumbnail is to be shown before decoding HD images
   239     /// If the Fs thumbnail is to be shown before decoding HD images
   256     TBool       iShwFsThumbnail;                    
   240     TBool       iShwFsThumbnail;                    
   257     /// If the item is non jpeg
   241     /// If the item is non jpeg
   258     TBool       iIsNonJpeg;                         
   242     TBool       iIsNonJpeg;                         
   281     /// Surface buffer
   265     /// Surface buffer
   282     void*               iSurfBuffer;               
   266     void*               iSurfBuffer;               
   283     /// Surface buffer AO
   267     /// Surface buffer AO
   284     CGlxActiveCallBack* iSurfBufferAO;              
   268     CGlxActiveCallBack* iSurfBufferAO;              
   285 
   269 
   286     CAlfCompositionSource* ialfCompositionSurface;
       
   287 
       
   288     /// Internal Image decoder AO
   270     /// Internal Image decoder AO
   289     CGlxHdmiDecoderAO*  iGlxDecoderAO;                            
   271     CGlxHdmiDecoderAO*  iGlxDecoderAO;                            
   290     /// Image Decoder
   272     /// Image Decoder
   291     CImageDecoder*      iImageDecoder;              
   273     CImageDecoder*      iImageDecoder;              
   292     /// RFs
   274     /// RFs
   293     RFs                 iFsSession;                 
   275     RFs                 iFsSession;                 
   294 
   276 
   295     TPoint      iLeftCornerForZoom;                   
   277     TPoint      iLeftCornerForZoom;                   
   296     /// Timer for Zoom
   278     /// Timer for Zoom
   297     CPeriodic*  iTimer;                              
   279     CPeriodic*  iTimer;                              
   298     /// Timer for Animation
       
   299     CPeriodic*  iAnimTimer;                         
       
   300     TInt        iAnimCounter;
       
   301 
   280 
   302     /// Various objects to store sizes and count
   281     /// Various objects to store sizes and count
   303     /// to store the Tv screen size
   282     /// to store the Tv screen size
   304     TSize       iTvScreenSize;                      
   283     TSize       iTvScreenSize;                      
   305     /// To Store the target bitmap size to display(as per Aspect Ratio)
   284     /// To Store the target bitmap size to display(as per Aspect Ratio)