imaging/imaginginttest/src/TestStepYUVConversion.h
changeset 0 5752a19fdefe
equal deleted inserted replaced
-1:000000000000 0:5752a19fdefe
       
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 // This file contains the test steps ICL YUV testing  for Bravo - PREQ 747.
       
    15 // 
       
    16 //
       
    17 
       
    18 
       
    19 #ifndef	__TESTSTEPYUVCONVERSION__
       
    20 #define	__TESTSTEPYUVCONVERSION__
       
    21 
       
    22 // EPOC includes
       
    23 #include "TestStepConversion.h"
       
    24 //#include <imageframe.h>
       
    25 #include <iclexifimageframe.h>
       
    26 //#include <JPEGImageFramePlugin.h>
       
    27 
       
    28 /**
       
    29  *
       
    30  * @class CTestStepYUVConversion 
       
    31  * Base Class for YUV Tests
       
    32  *
       
    33  */
       
    34 class CTestStepYUVConversion : public CTestStepConversion
       
    35 {
       
    36 protected:
       
    37 	CTestStepYUVConversion(const TDesC& aTestName); 
       
    38 	void EnableLogs(TBool aEnable);
       
    39 	
       
    40  	// MM-ICL-FRM-I-1001-CP, MM-ICL-FRM-I-1008-HP 
       
    41 	TInt DecodeToRChunkAndEncodeToFileL(const TDesC& aFileName);
       
    42 	
       
    43 	// MM-ICL-FRM-I-1002-CP,  MM-ICL-FRM-I-1009-HP
       
    44 	TInt DecodeToRChunkAndEncodeToDescL(const TDesC& aFileName);
       
    45 	
       
    46 	// MM-ICL-FRM-I-1003-CP,  MM-ICL-FRM-I-1010-HP
       
    47 	TInt DecodeToDescAndEncodeToFileL(const TDesC& aFileName);
       
    48 	
       
    49 	// MM-ICL-FRM-I-1004-CP,  MM-ICL-FRM-I-1011-HP
       
    50 	TInt DecodeToDescAndEncodeToDescL(const TDesC& aFileName);
       
    51 	
       
    52 	// MM-ICL-FRM-I-1005-LP
       
    53 	TInt DecodeToRChunkAndEncodeToFileXtraParamsL(const TDesC& aFileName);
       
    54 	
       
    55 	// MM-ICL-FRM-I-1006-LP
       
    56 	TInt EnquireYUVDecoderPluginUIDL(const TDesC& aFileName);
       
    57 	
       
    58 	// MM-ICL-FRM-I-1006-LP
       
    59 	TInt EnquireYUVEncoderPluginUIDL(const TDesC& aFileName);
       
    60 	
       
    61 	// MM-ICL-FRM-I-1007-CP
       
    62 	TInt ListYUVEncoderSupportedFormats();
       
    63 	
       
    64 	// MM-ICL-FRM-I-1007-CP
       
    65 	TInt ListYUVDecoderSupportedFormats();
       
    66 	
       
    67 	// MM-ICL-FRM-I-1111-CP
       
    68    	TInt YUVEncodeUnsupportedImageL(const TDesC& aFileName);
       
    69 	
       
    70 	// MM-ICL-FRM-I-1112-CP
       
    71 	TInt YUVEncodeUnsupportedFrameL(const TDesC& aFileName);
       
    72 	
       
    73 	// MM-ICL-FRM-I-1113-CP
       
    74 	TInt YUVEncodeCorruptRChunkL(const TDesC& aFileName);
       
    75     
       
    76     // MM-ICL-FRM-I-1114-CP
       
    77     TInt YUVEncodeCorruptDescriptorL(const TDesC& aFileName);
       
    78 
       
    79     // MM-ICL-FRM-I-1117-CP
       
    80     TInt JPEGDecodeUnsupportedYUVL(const TDesC& aFileName);
       
    81     
       
    82     // MM-ICL-FRM-I-1118-CP
       
    83     TInt CorruptJPEGDecodeYUVL(const TDesC& aFileName);
       
    84     
       
    85     // MM-ICL-FRM-I-1119-HP
       
    86     TInt CorruptJPEGDecodeDescYUVL(const TDesC& aFileName);
       
    87     
       
    88     // MM-ICL-FRM-I-1120-HP
       
    89     TInt GIFDecodeYUVL(const TDesC& aFileName);
       
    90     
       
    91     TFileName	iFileNameDest;
       
    92     
       
    93     TBool iEnableLogs;	
       
    94 
       
    95 };
       
    96 
       
    97 /**
       
    98  *
       
    99  * @class CTestConvertYUVRChunk
       
   100  * For YUV Conversion tests from RChunk
       
   101  * MM-ICL-FRM-I-1001-CP, MM-ICL-FRM-I-1002-CP, MM-ICL-FRM-I-1008-HP & MM-ICL-FRM-I-1009-HP
       
   102  *
       
   103  */
       
   104 class CTestConvertYUVRChunk : public CTestStepYUVConversion
       
   105 {
       
   106 public:
       
   107 	static CTestConvertYUVRChunk* NewL(const TDesC& aTestName);
       
   108 	virtual TVerdict DoTestStepL();
       
   109 	
       
   110 protected:
       
   111 	TVerdict TestStepL();
       
   112 
       
   113 private:
       
   114 	CTestConvertYUVRChunk(const TDesC& aTestName);
       
   115 };
       
   116 
       
   117 /**
       
   118  *
       
   119  * CTestConvertYUVDesc
       
   120  * For YUV Conversion tests from Descriptor 
       
   121  * MM-ICL-FRM-I-1003-CP, MM-ICL-FRM-I-1004-CP, MM-ICL-FRM-I-1010-HP & MM-ICL-FRM-I-1011-HP
       
   122  *
       
   123  */
       
   124 class CTestConvertYUVDesc : public CTestStepYUVConversion
       
   125 {
       
   126 public:
       
   127 	static CTestConvertYUVDesc* NewL(const TDesC& aTestName);
       
   128     virtual TVerdict DoTestStepL();
       
   129     
       
   130 protected:    
       
   131 	TVerdict TestStepL();
       
   132 
       
   133 private:
       
   134 	CTestConvertYUVDesc(const TDesC& aTestName);
       
   135 };
       
   136 
       
   137 /**
       
   138  *
       
   139  * For YUV Conversion tests from Descriptor 
       
   140  * CTestCSEncodeYUVExtraParams
       
   141  * MM-ICL-FRM-I-1005-LP
       
   142  *
       
   143  */
       
   144 
       
   145 class CTestCSEncodeYUVExtraParams : public CTestStepYUVConversion
       
   146 {
       
   147 	public:
       
   148 	static CTestCSEncodeYUVExtraParams* NewL(const TDesC& aTestName);
       
   149 
       
   150 protected:
       
   151 	CTestCSEncodeYUVExtraParams(const TDesC& aTestName);
       
   152 	virtual TVerdict DoTestStepL();
       
   153 };
       
   154 
       
   155 /**
       
   156 * 
       
   157 * CTestCSGetPluginUID
       
   158 * For correct UID for the YUVJPEG encoder and decoder plug-ins 
       
   159 * MM-ICL-FRM-I-1006-LP
       
   160 *
       
   161 */
       
   162 
       
   163 class CTestCSGetPluginUID : public CTestStepYUVConversion
       
   164 {
       
   165 	public:
       
   166 	static CTestCSGetPluginUID* NewL(const TDesC& aTestName);
       
   167 
       
   168 protected:
       
   169 	CTestCSGetPluginUID(const TDesC& aTestName);
       
   170 	virtual TVerdict DoTestStepL();
       
   171 };
       
   172 
       
   173 /**
       
   174 * 
       
   175 * CTestCSGetSupportedYUVFormats
       
   176 * For correct list of supported YUV formats for the YUVJPEG encoder and decoder plug-ins
       
   177 * MM-ICL-FRM-I-1007-LP
       
   178 *
       
   179 */
       
   180 
       
   181 class CTestCSGetSupportedYUVFormats : public CTestStepYUVConversion
       
   182 {
       
   183 	public:
       
   184 	static CTestCSGetSupportedYUVFormats* NewL(const TDesC& aTestName);
       
   185 
       
   186 protected:
       
   187 	CTestCSGetSupportedYUVFormats(const TDesC& aTestName);
       
   188 	virtual TVerdict DoTestStepL();		
       
   189 };
       
   190 
       
   191 /**
       
   192 * 
       
   193 * CTestCSYUVEncoderNegative
       
   194 * For YUV Encoder Negative tests
       
   195 * MM-ICL-FRM-I-1111-CP, MM-ICL-FRM-I-1112-CP, MM-ICL-FRM-I-1113-HP & MM-ICL-FRM-I-1114-HP
       
   196 *
       
   197 */
       
   198 
       
   199 class CTestCSYUVEncoderNegative : public CTestStepYUVConversion
       
   200 {
       
   201 	public:
       
   202 	static 	CTestCSYUVEncoderNegative* NewL(const TDesC& aTestName);
       
   203 
       
   204 protected:
       
   205 	CTestCSYUVEncoderNegative(const TDesC& aTestName);
       
   206 	virtual TVerdict DoTestStepL();		
       
   207 };
       
   208 
       
   209 /**
       
   210 * 
       
   211 * CTestCSYUVDecoderNegative
       
   212 * For YUV Decoder Negative tests
       
   213 * MM-ICL-FRM-I-1117-CP, MM-ICL-FRM-I-1118-CP, MM-ICL-FRM-I-1119-HP & MM-ICL-FRM-I-1120-HP
       
   214 *
       
   215 */
       
   216 class CTestCSYUVDecoderNegative: public CTestStepYUVConversion
       
   217 {
       
   218 	public:
       
   219 	static 	CTestCSYUVDecoderNegative* NewL(const TDesC& aTestName);
       
   220 
       
   221 protected:
       
   222 	CTestCSYUVDecoderNegative(const TDesC& aTestName);
       
   223 	virtual TVerdict DoTestStepL();		
       
   224 };
       
   225 
       
   226 
       
   227 #endif