--- a/camerauis/cameraapp/generic/inc/CamBurstCaptureArray.h Thu Aug 19 09:36:57 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,356 +0,0 @@
-/*
-* Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: A class that represents a set of capture items
-*
-* Copyright © 2007-2008 Nokia. All rights reserved.
-* This material, including documentation and any related computer
-* programs, is protected by copyright controlled by Nokia. All
-* rights are reserved. Copying, including reproducing, storing,
-* adapting or translating, any or all of this material requires the
-* prior written consent of Nokia. This material also contains
-* confidential information which may not be disclosed to others
-* without the prior written consent of Nokia.
-
-*
-*
-*/
-
-
-#ifndef CAMBURSTCAPTUREARRAY_H
-#define CAMBURSTCAPTUREARRAY_H
-
-// INCLUDES
-
-#include <e32base.h>
-
-// CONSTANTS
-
-// FORWARD DECLARATIONS
-class CFbsBitmap;
-class CCamImageSaveActive;
-
-/**
-* A capture burst array, maintains a set of CCamBurstCaptureItem objects
-*/
-class CCamBurstCaptureArray : public CBase
- {
- public:
-
- /**
- * Two-phased constructor.
- * @since 2.8
- * @param aImageSaveActive class that manages image saving,
- * informed if a save request was previously made
- * for a file now being marked for deletion.
- * @return pointer to the created CCamBurstCaptureArray object
- */
- static CCamBurstCaptureArray* NewL( CCamImageSaveActive& aImageSaveActive );
-
- /**
- * Destructor.
- * @since 2.8
- */
- ~CCamBurstCaptureArray();
-
- public: // New methods
-
- /**
- * Sets an item's full file path and image name
- * @since 2.8
- * @param aFullFileName the full file path and image name for the item
- * @param aImageName the name of the image displayed in the UI
- * @param aIndex the index of the item to name.
- */
- void SetNameL( const TDesC& aFullFileName, const TDesC& aImageName,
- TInt aIndex );
-
- /**
- * Returns whether a particular file has already been saved.
- * @since 2.8
- * @param aFilename the name of the file to check.
- * @return ETrue if the file has been saved.
- */
- TBool AlreadySavedFile( const TDesC& aFilename );
-
- /**
- * Returns whether a particular file is in the process of being saved.
- * @since 2.8
- * @param aFilename the name of the file to check.
- * @return ETrue if the file is in the process of being saved.
- */
- TBool CurrentlySavingFile( const TDesC& aFilename );
-
- /**
- * Returns the number of items in the array
- * @since 2.8
- * @return count of items in the array
- */
- TInt Count() const;
-
- /**
- * Returns the number of un-deleted items in the array
- * @since 2.8
- * @return count of items in the array that are not marked for deletion
- */
- inline TInt ImagesRemaining() const;
-
- /**
- * Delete unwanted items from the array, releasing memory
- * @since 2.8
- * @param aRequiredCount the number of items required
- */
- void Reset( TInt aRequiredCount = 0 );
-
- /**
- * Sets the item's full file path and image name
- * @since 2.8
- * @param aFullFileName the full file path and image name for the item
- * @param aImageName the name of the image displayed in the UI
- */
- void SetNextNameL( const TDesC& aFullFileName, const TDesC& aImageName );
-
- /**
- * Stores the snapshot bitmap in the item
- * @since 2.8
- * @param aSnapshot the snapshot image returned by the camera engine
- */
- void SetNextSnapshotL( const CFbsBitmap& aSnapshot );
-
- /**
- * Sets the item's deletion state
- * @since 2.8
- * @param aItemIndex Index of the item
- * @param aDeleted ETrue if the item has been selected for deletion
- * @return system wide error code or KErrNone
- */
- TInt SetDeleted( TInt aItemIndex, TBool aDeleted );
-
- /**
- * Skips the next image if marked for deletion
- * @since 2.8
- * @return Whether or not the image was skipped
- */
- TBool IsNextImageDeleted();
-
- /**
- * Returns a pointer to the next full file path and name in the array
- * since the last one requested
- * @since 2.8
- * @return Pointer to the filename
- */
- const TDesC& NextFileName();
-
- /**
- * Returns the index of the next full file path and name in the array
- * since the last one requested by NextFileName()
- * This can be used to determine any unsaved images
- * @since 2.8
- * @return Index of the next filename
- */
- TInt NextFileIndex() const;
-
- /**
- * Returns a pointer to the full file path and name
- * @since 2.8
- * @param aItemIndex Index of the item
- * @return Pointer to the filename
- */
- const TDesC& FileName( TInt aItemIndex ) const;
-
- /**
- * Returns a pointer to the image name
- * @since 2.8
- * @param aItemIndex Index of the item
- * @return Pointer to the image name
- */
- const TDesC& ImageName( TInt aItemIndex ) const;
-
- /**
- * Returns a pointer to the snapshot image
- * @since 2.8
- * @param aItemIndex Index of the item
- * @return the snapshot image
- */
- const CFbsBitmap* Snapshot( TInt aItemIndex ) const;
-
- /**
- * Indicates whether the item has been selected for deletion
- * @since 2.8
- * @param aItemIndex Index of the item
- * @return the item's deletion state
- */
- TBool IsDeleted( TInt aItemIndex ) const;
-
- /**
- * Replaces the bitmap in the given index.
- * @since 3.0
- * @param aBitmap The new bitmap to replace current
- * @param aItemIndex Index of the replaced item
- * @return Success of the replacement
- */
- TBool ReplaceSnapshot( const CFbsBitmap* aBitmap, TInt aItemIndex );
-
- private:
-
- /**
- * A capture burst item, holds the full file path and name, the snapshot image and
- * indication of whether or not the item has been selected for deletion
- */
- class CCamBurstCaptureItem : public CBase
- {
- public:
-
- /**
- * Two-phased constructor.
- * @since 2.8
- *
- * @return pointer to the created CCamBurstCaptureItem object
- */
- static CCamBurstCaptureItem* NewLC();
-
- /**
- * Destructor.
- * @since 2.8
- */
- ~CCamBurstCaptureItem();
-
- public: // New methods
-
- /**
- * Sets the item's full file path and image name
- * @since 2.8
- * @param aFullFileName the full file path and image name for the item
- * @param aImageName the name of theimage displayed in the UI
- */
- void SetNameL( const TDesC& aFullFileName, const TDesC& aImageName );
-
- /**
- * Stores the snapshot bitmap in the item
- * @since 2.8
- * @param aSnapshot the snapshot image returned by the camera engine
- */
- void SetSnapshotL( const CFbsBitmap& aSnapshot );
-
- /**
- * Sets the item's deletion state
- * @since 2.8
- * @param aDeleted ETrue if the item has been selected for deletion
- */
- void SetDeleted( TBool aDeleted );
-
- /**
- * Returns a pointer to the full file path and name
- * @since 2.8
- * @return Pointer to the filename
- */
- const TDesC& FileName() const;
-
- /**
- * Returns a pointer to the image name
- * @since 2.8
- * @return Pointer to the image name
- */
- const TDesC& ImageName() const;
-
- /**
- * Returns a reference to the snapshot image
- * @since 2.8
- * @return the snapshot image
- */
- const CFbsBitmap* Snapshot() const;
-
- /**
- * Indicates whether the item has been selected for deletion
- * @since 2.8
- * @return the item's deletion state
- */
- TBool IsDeleted() const;
-
- /**
- * Replaces the bitmap.
- * @since 3.0
- * @param aBitmap The new bitmap to replace current
- * @return Success of the replacement
- */
- TBool ReplaceSnapshot( const CFbsBitmap* aBitmap );
-
- private:
-
- /**
- * C++ default constructor.
- * @since 2.8
- */
- CCamBurstCaptureItem();
-
- /**
- * Second phase construction
- */
- void ConstructL();
-
- private:
- // The full path and filename for the image
- HBufC* iFileName;
- // The image name
- HBufC* iImageName;
- // The snapshot image
- CFbsBitmap* iSnapshot;
- // The item's deletion state
- TBool iIsDeleted;
- };
-
- private:
-
- /**
- * C++ default constructor.
- * @since 2.8
- * @param aImageSaveActive class that manages image saving,
- * informed if a save request was previously made
- * for a file now being marked for deletion.
- */
- CCamBurstCaptureArray( CCamImageSaveActive& aImageSaveActive );
-
- /**
- * Second phase construction
- */
- void ConstructL();
-
- /**
- * Create a new item in the array if necessary
- * @since 2.8
- * @param aRequiredIndex the expected index for an item
- */
- void CheckArraySizeL( TInt aRequiredIndex );
-
- private:
-
- // Array of items each representing an image in a burst capture
- RPointerArray<CCamBurstCaptureItem> iBurstItems;
- // Active object that manages file saving and deletion
- CCamImageSaveActive& iImageSaveActive;
- // Index used to manage storage of file names and image names
- TInt iNextSetName;
- // Index used to manage retrieval of file names
- TInt iNextGetName;
- // Index used to manage storage of snapshot images
- TInt iNextSnapshot;
- // Counter for the number of undeleted items
- TInt iImagesRemaining;
- };
-
-#include "CamBurstCaptureArray.inl"
-
-
-#endif // CAMBURSTCAPTUREARRAY_H
-
-// End of File