imagehandlingutilities/thumbnailmanager/thumbnailclient/inc/thumbnailrequestactive.h
branchRCL_3
changeset 21 ad31f4183ddc
parent 20 ffb2d5dd62e9
child 28 ff2fb7658ff7
equal deleted inserted replaced
20:ffb2d5dd62e9 21:ad31f4183ddc
    30 class CFbsBitmap;
    30 class CFbsBitmap;
    31 class RThumbnailSession;
    31 class RThumbnailSession;
    32 class CThumbnailDataImpl;
    32 class CThumbnailDataImpl;
    33 class CThumbnailRequestQueue;
    33 class CThumbnailRequestQueue;
    34 
    34 
    35 enum TThumbnailRequestType
    35 enum TThumbnailReqType
    36     {
    36     {
    37     EReqGetThumbnailHandle = 0, 
    37     EReqGetThumbnailHandle = 0, 
    38     EReqGetThumbnailPath = 1,
    38     EReqGetThumbnailPath = 1,
    39     EReqSetThumbnailBuffer = 2,
    39     EReqSetThumbnailBuffer = 2,
    40     EReqSetThumbnailBitmap = 3,
    40     EReqSetThumbnailBitmap = 3,
    64      * Two-phased constructor
    64      * Two-phased constructor
    65      *
    65      *
    66      * @since S60 v5.0
    66      * @since S60 v5.0
    67      * @param aFs Fileserver used.
    67      * @param aFs Fileserver used.
    68      * @param aThumbnailSession Session used.
    68      * @param aThumbnailSession Session used.
    69      * @param aObserver Observer to receive notifications about completed
    69      * @param aObserver Observer to receive notifications about completed operations.
    70      *                  operations.
    70      * @param aRequestObserver Observer to receive notifications about completed requests.
    71      * @param aId Assigned ID of the request, session specific.
    71      * @param aId Assigned ID of the request, session specific.
    72      * @param aPriority assigned processing priority
    72      * @param aPriority assigned processing priority
    73      * @param aQueue request processor
    73      * @param aQueue request processor
    74      * @return New CThumbnailRequestActive object.
    74      * @return New CThumbnailRequestActive object.
    75      */
    75      */
    76     static CThumbnailRequestActive* NewL( RFs& aFs, RThumbnailSession&
    76     static CThumbnailRequestActive* NewL( RFs& aFs, RThumbnailSession&
    77         aThumbnailSession, MThumbnailManagerObserver& aObserver,
    77         aThumbnailSession, MThumbnailManagerObserver& aObserver, 
    78         TThumbnailRequestId aId, TInt aPriority, CThumbnailRequestQueue* aQueue );
    78         MThumbnailManagerRequestObserver* aRequestObserver, TThumbnailRequestId aId, 
       
    79         TInt aPriority, CThumbnailRequestQueue* aQueue );
    79 
    80 
    80     /**
    81     /**
    81      * Get a thumbnail created from file object.
    82      * Get a thumbnail created from file object.
    82      *
    83      *
    83      * @since S60 v5.0
    84      * @since S60 v5.0
   161      *                    anything other than returning it in the
   162      *                    anything other than returning it in the
   162      *                    ThumbnailReady callback.
   163      *                    ThumbnailReady callback.
   163      * @param aGeneratePersistentSizesOnly
   164      * @param aGeneratePersistentSizesOnly
   164      * @param aTargetUri         Target URI to which the imported thumbnail is linked.
   165      * @param aTargetUri         Target URI to which the imported thumbnail is linked.
   165      * @param aThumbnailSize Requested thumbnail size 
   166      * @param aThumbnailSize Requested thumbnail size 
       
   167      * @param aOverwrite Overwrite old existing thumbs
   166      */    
   168      */    
   167     void SetThumbnailL( TDesC8* aBuffer, TThumbnailId aThumbnailId, const TDesC8& aMimeType,
   169     void SetThumbnailL( TDesC8* aBuffer, TThumbnailId aThumbnailId, const TDesC8& aMimeType,
   168         CThumbnailManager::TThumbnailFlags aFlags, CThumbnailManager
   170         CThumbnailManager::TThumbnailFlags aFlags, CThumbnailManager
   169         ::TThumbnailQualityPreference aQualityPreference, const TSize& aSize, const
   171         ::TThumbnailQualityPreference aQualityPreference, const TSize& aSize, const
   170         TDisplayMode aDisplayMode, const TInt aPriority, TAny* aClientData, TBool aGeneratePersistentSizesOnly,
   172         TDisplayMode aDisplayMode, const TInt aPriority, TAny* aClientData, TBool aGeneratePersistentSizesOnly,
   171         const TDesC& aTargetUri, TThumbnailSize aThumbnailSize );
   173         const TDesC& aTargetUri, TThumbnailSize aThumbnailSize, TBool aOverwrite);
   172     
   174     
   173     /**
   175     /**
   174      * Set a thumbnail
   176      * Set a thumbnail
   175      *
   177      *
   176      * @since S60 v5.0
   178      * @since S60 v5.0
   185      *                    anything other than returning it in the
   187      *                    anything other than returning it in the
   186      *                    ThumbnailReady callback.
   188      *                    ThumbnailReady callback.
   187      * @param aGeneratePersistentSizesOnly
   189      * @param aGeneratePersistentSizesOnly
   188      * @param aTargetUri         Target URI to which the imported thumbnail is linked.
   190      * @param aTargetUri         Target URI to which the imported thumbnail is linked.
   189      * @param aThumbnailSize Requested thumbnail size 
   191      * @param aThumbnailSize Requested thumbnail size 
       
   192      * @param aOverwrite Overwrite old existing thumbs
   190      */    
   193      */    
   191     void SetThumbnailL( CFbsBitmap* aBitmap, TThumbnailId aThumbnailId, const TDesC8& aMimeType,
   194     void SetThumbnailL( CFbsBitmap* aBitmap, TThumbnailId aThumbnailId, const TDesC8& aMimeType,
   192         CThumbnailManager::TThumbnailFlags aFlags, CThumbnailManager
   195         CThumbnailManager::TThumbnailFlags aFlags, CThumbnailManager
   193         ::TThumbnailQualityPreference aQualityPreference, const TSize& aSize, const
   196         ::TThumbnailQualityPreference aQualityPreference, const TSize& aSize, const
   194         TDisplayMode aDisplayMode, const TInt aPriority, TAny* aClientData, TBool aGeneratePersistentSizesOnly,
   197         TDisplayMode aDisplayMode, const TInt aPriority, TAny* aClientData, TBool aGeneratePersistentSizesOnly,
   195         const TDesC& aTargetUri, TThumbnailSize aThumbnailSize );    
   198         const TDesC& aTargetUri, TThumbnailSize aThumbnailSize, TBool aOverwrite);    
   196     
   199     
   197     /**
   200     /**
   198      * Update thumbnails by Id.
   201      * Update thumbnails by Id.
   199      *
   202      *
   200      * @since S60 v5.0
   203      * @since S60 v5.0
   292      * C++ default constructor
   295      * C++ default constructor
   293      *
   296      *
   294      * @since S60 v5.0
   297      * @since S60 v5.0
   295      * @param aFs Fileserver used.
   298      * @param aFs Fileserver used.
   296      * @param aThumbnailSession Session used.
   299      * @param aThumbnailSession Session used.
   297      * @param aObserver Observer to receive notifications about completed
   300      * @param aObserver Observer to receive notifications about completed operations.
   298      *                  operations.
   301      * @param aRequestObserver Observer to receive notifications about completed requests.
   299      * @param aId Assigned ID of the request, session specific.
   302      * @param aId Assigned ID of the request, session specific.
   300      * @param aPriority assigned processing priority
   303      * @param aPriority assigned processing priority
   301      * @param aQueue request processor
   304      * @param aQueue request processor
   302      * @return New CThumbnailRequestActive object.
   305      * @return New CThumbnailRequestActive object.
   303      */
   306      */
   304     CThumbnailRequestActive( RFs& aFs, RThumbnailSession& aThumbnailSession,
   307     CThumbnailRequestActive( RFs& aFs, RThumbnailSession& aThumbnailSession,
   305         MThumbnailManagerObserver& aObserver, TThumbnailRequestId aId, TInt aPriority,
   308         MThumbnailManagerObserver& aObserver, MThumbnailManagerRequestObserver* aRequestObserver, 
   306         CThumbnailRequestQueue* aQueue);
   309         TThumbnailRequestId aId, TInt aPriority, CThumbnailRequestQueue* aQueue);
   307 
   310 
   308     /**
   311     /**
   309      * Symbian 2nd phase constructor can leave.
   312      * Symbian 2nd phase constructor can leave.
   310      *
   313      *
   311      * @since S60 v5.0
   314      * @since S60 v5.0
   384 
   387 
   385     /**
   388     /**
   386      * Observer to receive notifications about completed operations.
   389      * Observer to receive notifications about completed operations.
   387      */
   390      */
   388     MThumbnailManagerObserver& iObserver;
   391     MThumbnailManagerObserver& iObserver;
       
   392     
       
   393     /**
       
   394      * Observer to receive notifications about completed requests.
       
   395      */
       
   396     MThumbnailManagerRequestObserver* iRequestObserver;
   389 
   397 
   390     /**
   398     /**
   391      * Fileserver, not own
   399      * Fileserver, not own
   392      */
   400      */
   393     RFs& iFs;
   401     RFs& iFs;
   452     TInt64 iModified;
   460     TInt64 iModified;
   453     
   461     
   454     // not own
   462     // not own
   455     CThumbnailRequestQueue* iRequestQueue;
   463     CThumbnailRequestQueue* iRequestQueue;
   456     
   464     
   457     TThumbnailRequestType iRequestType;
   465     TThumbnailReqType iRequestType;
   458     
   466     
   459     // request timeout timer
   467     // request timeout timer
   460     CPeriodic* iTimer;
   468     CPeriodic* iTimer;
   461     TInt iStartError;
   469     TInt iStartError;
   462     
   470