--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/camerauis/cameraapp/generic/common/inc/CamVideoQualityLevel.h Wed Sep 01 12:30:54 2010 +0100
@@ -0,0 +1,198 @@
+/*
+* Copyright (c) 2007 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: Container class for video quality data*
+*/
+
+
+
+#ifndef CAMVIDEOQUALITYLEVEL_H
+#define CAMVIDEOQUALITYLEVEL_H
+
+// INCLUDES
+#include <barsread.h>
+#include "camconfigurationconstants.h"
+
+
+// CLASS DECLARATION
+
+/**
+* Container class to hold video quality settings
+* Read in from resource file
+*
+* @since 2.8
+*/
+class CCamVideoQualityLevel : public CBase
+ {
+ public: // Constructors and destructor
+
+ /**
+ * Two-phased constructor.
+ * @param aReader resource reader for video quality level resources
+ * @return pointer to instances of CCamVideoQualityLevel
+ */
+ static CCamVideoQualityLevel* NewL( TResourceReader& aReader );
+
+ /**
+ * Two-phased constructor.
+ * @param aReader resource reader for video quality level resources
+ * @param aVariantFlags The flags to specify operator variants
+ * @return pointer to instances of CCamVideoQualityLevel
+ */
+ static CCamVideoQualityLevel* NewL( TVideoQualitySettings& aSettings );
+
+ /**
+ * Destructor.
+ */
+ virtual ~CCamVideoQualityLevel();
+
+ public: // New functions
+
+ /**
+ * Return video resolution associated with this quality level
+ * @since 2.8
+ * @return Video resolution
+ */
+ TVideoResolution VideoResolution();
+
+ /**
+ * Return video frame rate associated with this quality level
+ * @since 2.8
+ * @return Video frame rate
+ */
+ TReal FrameRate();
+
+ /**
+ * Return video bitrate associated with this quality level
+ * @since 2.8
+ * @return Video bitrate
+ */
+ TInt VideoBitRate();
+
+ /**
+ * Return audio bitrate associated with this quality level identifier
+ * @since 2.8
+ * @return audio bitrate
+ */
+ TInt AudioBitRate();
+
+ /**
+ * Return mime type required associated with this video quality level
+ * @since 2.8
+ * @return descriptor containing mime type
+ */
+ TPtrC8 VideoMimeType();
+
+ /**
+ * Return preferred supplier value associated with this video quality level
+ * @since 2.8
+ * @return descriptor containing preferred supplier
+ */
+ TPtrC PreferredSupplier();
+
+ /**
+ * Return video codec associated with this video quality level
+ * @since 2.8
+ * @return descriptor containing codec
+ */
+ TPtrC8 VideoFileType();
+
+ /**
+ * Return audio codec associated with this video quality level
+ * @since 2.8
+ * @return descriptor containing audio codec
+ */
+ TPtrC8 AudioType();
+
+ /**
+ * Return file type identier associated with this video quality level
+ * either Mpeg4 or 3GP
+ * @since 2.8
+ * @return flags
+ */
+ TInt VideoType();
+
+ /**
+ * Return file length associated with this video quality level
+ * either max or short
+ * @since 2.8
+ * @return flags
+ */
+ TInt VideoLength();
+
+ /**
+ * Return video quality level
+ * @since 3.0
+ * @return quality level value
+ */
+ TInt VideoQuality();
+
+ private:
+
+ /**
+ * C++ default constructor.
+ */
+ CCamVideoQualityLevel();
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ * @param aReader resource reader for video quality level resources
+ * @param aVariantFlags The flags to specify operator variants
+ */
+ void ConstructL( TVideoQualitySettings& aSettings );
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ * @param aReader resource reader for video quality level resources
+ * @param aVariantFlags The flags to specify operator variants
+ */
+ void ConstructFromResourceL( TResourceReader& aReader );
+
+ private:
+ /**
+ * Reads an LTEXT element from resources and returns
+ * it as HBufC8.
+ * @since 2.8
+ * @param aReader Resource reader to read descriptor from
+ * @return HBufC8 containing string read from resource
+ */
+ HBufC8* ReadHBufC8L( TResourceReader& aReader ) const;
+
+ private: // Data
+ // Identifer
+ TInt iQualityLevel;
+ // Video reoslution
+ TVideoResolution iVideoResolution;
+ // Video Frame rate
+ TReal iVideoFrameRate;
+ // Video bit rate
+ TInt iVideoBitRate;
+ // Audio bit rate
+ TInt iAudioBitRate;
+ // Video mime type
+ HBufC8* iVideoMimeType;
+ // Preferred supplier
+ HBufC* iPreferredSupplier;
+ // Video file type
+ HBufC8* iVideoCodec;
+ // Audio codec
+ HBufC8* iAudioCodec;
+ // video type identifier (MPeg4 or 3GP)
+ TInt iVideoFileType;
+ // video length (max or short)
+ TInt iVideoLength;
+ };
+
+#endif // CAMVIDEOQUALITYLEVEL_H
+
+// End of File