epoc32/include/imageconversion.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
     1.1 --- a/epoc32/include/imageconversion.h	Wed Mar 31 12:27:01 2010 +0100
     1.2 +++ b/epoc32/include/imageconversion.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -1,9 +1,9 @@
     1.4  // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5  // All rights reserved.
     1.6  // This component and the accompanying materials are made available
     1.7 -// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     1.8 +// under the terms of "Eclipse Public License v1.0"
     1.9  // which accompanies this distribution, and is available
    1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.12  //
    1.13  // Initial Contributors:
    1.14  // Nokia Corporation - initial contribution.
    1.15 @@ -29,6 +29,10 @@
    1.16  #include <icl/icl_uids.hrh>
    1.17  #include <icl/imageconversionextension.h>
    1.18  
    1.19 +#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
    1.20 +#include <iclrecognizerutil.h>
    1.21 +#endif
    1.22 +
    1.23  class MImageDecoderRelay;
    1.24  class MImageEncoderRelay;
    1.25  class CImageDecoderPlugin;
    1.26 @@ -61,6 +65,7 @@
    1.27  	@internalComponent
    1.28  	*/
    1.29  	static CImageTypeDescription* NewLC(const TDesC& aDescription, const TUid aImageType, const TUid aSubType);
    1.30 +	
    1.31  	IMPORT_C ~CImageTypeDescription();
    1.32  	IMPORT_C const TDesC& Description() const;
    1.33  	IMPORT_C TUid ImageType() const;
    1.34 @@ -144,8 +149,9 @@
    1.35  	@internalComponent
    1.36  	*/
    1.37  	static CImplementationInformationType* NewLC();
    1.38 +
    1.39  	IMPORT_C ~CImplementationInformationType();
    1.40 -
    1.41 +	
    1.42  	/**
    1.43  	@internalComponent
    1.44  	*/
    1.45 @@ -261,7 +267,7 @@
    1.46  		/**
    1.47  		@publishedAll
    1.48  		@released
    1.49 -		
    1.50 +				
    1.51  		Codec must support crop.
    1.52  		 */
    1.53  		EOptionExtCrop = 0x0100,
    1.54 @@ -269,7 +275,7 @@
    1.55  		/**
    1.56  		@publishedAll
    1.57  		@released
    1.58 -		
    1.59 +			
    1.60  		Codec must support block streaming extension.
    1.61  		 */
    1.62  		EOptionExtStream = 0x0200,
    1.63 @@ -277,7 +283,7 @@
    1.64  		/**
    1.65  		@publishedAll
    1.66  		@released
    1.67 -		
    1.68 +			
    1.69  		Codec must support rotation through the operation extension.
    1.70  		 */
    1.71  		EOptionExtRotation = 0x0400,
    1.72 @@ -285,7 +291,7 @@
    1.73  		/**
    1.74  		@publishedAll
    1.75  		@released
    1.76 -		
    1.77 +				
    1.78  		Codec must support horizontal mirror through the operation extension.
    1.79  		 */
    1.80  		EOptionExtMirrorHorizontalAxis = 0x0800,
    1.81 @@ -293,7 +299,7 @@
    1.82  		/**
    1.83  		@publishedAll
    1.84  		@released
    1.85 -		
    1.86 +				
    1.87  		Codec must support vertical mirror through the operation extension.
    1.88  		 */
    1.89  		EOptionExtMirrorVerticalAxis = 0x1000,
    1.90 @@ -301,7 +307,7 @@
    1.91  		/**
    1.92  		@publishedAll
    1.93  		@released
    1.94 -		
    1.95 +				
    1.96  		Codec must support the scaling extension.
    1.97  		 */
    1.98  		EOptionExtScaling = 0x2000,
    1.99 @@ -326,7 +332,15 @@
   1.100  		Allows WMF codec to ignore any SETVIEWPORTORG, SETVIEWPORTEXT, SCALEVIEWPORTEXT 
   1.101  		or OFFSETVIEWPORTORG commands in the metafile and allows scaling to destination bitmap.
   1.102  		*/
   1.103 -		EOptionWmfIgnoreViewportMetaData = 0x020000
   1.104 +		EOptionWmfIgnoreViewportMetaData = 0x020000,
   1.105 +
   1.106 +		/**
   1.107 +		@publishedPartner
   1.108 +		@prototype
   1.109 +		
   1.110 +		Requests that codec applies the auto rotation when decoding according to the orientation tag in the image Exif header.
   1.111 +		*/
   1.112 +		EOptionAutoRotate = 0x040000
   1.113  		};
   1.114  
   1.115  	/**
   1.116 @@ -573,9 +587,16 @@
   1.117  		EOptionGenerateAdaptivePalette = 0x02,
   1.118  
   1.119  		/**
   1.120 +		Use the highest possible image encoding speed; this may result in lower image quality. 
   1.121 +		This flag is more applicable to formats which use "lossy" compression algorithms, such as JPEG. 
   1.122 +		Decoders that do not support fast encoding will ignore it.
   1.123 +		*/
   1.124 +		EPreferFastEncode = 0x04,
   1.125 +
   1.126 +		/**
   1.127  		@publishedAll
   1.128  		@released
   1.129 -		
   1.130 +				
   1.131  		Codec must support block streaming extension.
   1.132  		 */
   1.133  		EOptionExtStream = 0x0100,
   1.134 @@ -583,7 +604,7 @@
   1.135  		/**
   1.136  		@publishedAll
   1.137  		@released
   1.138 -		
   1.139 +				
   1.140  		Codec must support rotation through the operation extension.
   1.141  		 */
   1.142  		EOptionExtRotation = 0x0200,
   1.143 @@ -591,6 +612,7 @@
   1.144  		/**
   1.145  		@publishedAll
   1.146  		@released
   1.147 +				
   1.148  		Codec must support horizontal mirror through the operation extension.
   1.149  		 */
   1.150  		EOptionExtMirrorHorizontalAxis = 0x0400,
   1.151 @@ -598,6 +620,7 @@
   1.152  		/**
   1.153  		@publishedAll
   1.154  		@released
   1.155 +				
   1.156  		Codec must support vertical mirror through the operation extension.
   1.157  		 */
   1.158  		EOptionExtMirrorVerticalAxis = 0x0800,
   1.159 @@ -605,6 +628,7 @@
   1.160  		/**
   1.161  		@publishedAll
   1.162  		@released
   1.163 +				
   1.164  		Codec must support setting thumbnail when using the other extensions (e.g. thumbnail rotation)
   1.165  		 */
   1.166  		EOptionExtUseWithSetThumbnail = 0x1000,
   1.167 @@ -685,30 +709,5 @@
   1.168  friend class CImageEncodeConstruct;
   1.169  	};
   1.170  
   1.171 -class CIclRecognizerUtil; // declared here
   1.172 -/**
   1.173 -@internalComponent
   1.174 +#endif // IMAGECONVERSION_H
   1.175  
   1.176 -ICL utility class used by ICL recognizer
   1.177 -Maintains an array of CImplementationInformation objects
   1.178 -so that data headers can be speedily matched against.
   1.179 -Updates the array when notified by ECOM of a change to the global
   1.180 -interface implementation registration data.
   1.181 -*/
   1.182 -NONSHARABLE_CLASS( CIclRecognizerUtil ) : public CBase
   1.183 -	{
   1.184 -public:
   1.185 -	IMPORT_C static CIclRecognizerUtil* NewL();
   1.186 -	~CIclRecognizerUtil();
   1.187 -	IMPORT_C TBool GetMimeTypeL(const TDesC8& aImageData, const TDesC& aFileName, TDes8& aMimeType);
   1.188 -
   1.189 -private:
   1.190 -	CIclRecognizerUtil();
   1.191 -	void ConstructL();
   1.192 -
   1.193 -private:
   1.194 -	class CBody;
   1.195 -	CBody* iBody;	
   1.196 -	};
   1.197 -
   1.198 -#endif // IMAGECONVERSION_H