imagingandcamerafws/imagingunittest/testcodec/src/101F7BF5.rss
changeset 0 40261b775718
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/imagingandcamerafws/imagingunittest/testcodec/src/101F7BF5.rss	Tue Feb 02 01:56:55 2010 +0200
@@ -0,0 +1,443 @@
+// Copyright (c) 2001-2009 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:
+// Registry file for the Test codec
+// 
+//
+
+#include <icl/icl_uids.hrh>
+#include <ecom/registryinfo.rh>
+#include "TestUids.hrh"
+#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include <icl/icl_uids_const.hrh>
+#include <icl/icl_uids_def.hrh>
+#endif
+
+#define CR 0x0D
+
+#define KBadVer 3 // should be just higher than that currently legally supported
+
+RESOURCE REGISTRY_INFO theInfo
+	{
+	dll_uid = 0x101F7BF5;
+	interfaces = 
+		{
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDecoderImplementationUidValue;
+					version_no = 2;
+					display_name = "TST";
+					default_data = {0x54, 0x53, 0x3F}; // "TS?"
+					opaque_data = {0, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, CR, 2, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x73, 0x74, CR, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// 0 0x101F7BF7 0x101F7BF8 1 .tst 2 image/tst image/test
+					},
+
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KFailTestDecoderImplementationUidValue;
+					version_no = 2;
+					display_name = "TST";
+					default_data = {0x54, 0x53, 0x54}; // "TST"
+					opaque_data = {0, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, CR, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// 0 0x101F7BF7 0x101F7BF8 1 .tst 1 image/test
+					}
+				};
+			},
+
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45B4;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestEncoderImplementationUidValue;
+					version_no = 2;
+					display_name = "TST";
+					default_data = {0x3F}; // "?" - Won't match
+					opaque_data = {0, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, CR, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// 0 0x101F7BF7 0x101F7BF8 1 .tst 1 image/test
+					}
+				};
+			},
+
+		// Bad version - has resource version no. beyond limit, and should be invisible
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KBadVerTestDecoderImplementationUidValue;
+					version_no = 2;
+					display_name = "BadVer TST";
+					default_data = {0x54, 0x54, 0x3F}; // "TT?"
+					opaque_data = {KBadVer, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, CR, 2, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x73, 0x74, CR, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// KBadVer 0x101F7BF7 0x101F7BF8 1 .tst 2 image/tst image/test
+					}
+				};
+			},
+
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45B4;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KBadVerTestEncoderImplementationUidValue;
+					version_no = 2;
+					display_name = "BadVer TST";
+					default_data = {0x3F}; // "?" - Won't match
+					opaque_data = {KBadVer, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, CR, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// KBadVer 0x101F7BF7 0x101F7BF8 1 .tst 1 image/test
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestAsyncDecoderImplementationUidValue;
+					version_no = 2;
+					display_name = "TSTA";
+					default_data = {0x54, 0x53, 0x3F}; // "TS?"
+					opaque_data = {0, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, 0x61, CR, 2, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x73, 0x74, CR, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// 0 0x101F7BF7 0x101F7BF8 1 .tsta 2 image/tst image/test
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45B4;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestAsyncEncoderImplementationUidValue;
+					version_no = 2;
+					display_name = "TSTA";
+					default_data = {0x54, 0x53, 0x3F}; // "TS?"
+					opaque_data = {0, 0x10, 0x1F, 0x7B, 0xF7, 0x10, 0x1F, 0x7B, 0xF8, 1, 0x2E, 0x74, 0x73, 0x74, 0x61, CR, 2, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x73, 0x74, CR, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x74, 0x65, 0x73, 0x74, CR};
+					// 0 0x101F7BF7 0x101F7BF8 1 .tsta 2 image/tst image/test
+					}
+				};
+			},
+//
+		INTERFACE_INFO
+			{
+			interface_uid = KDecoderInterfaceUidValue;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestExifDummyDecoderImplementationUidValue;
+					version_no = 1;
+					display_name = "dTst";
+					default_data = {0x3F}; // "?"
+					opaque_data = {2, 0, 0, 0x10, 0x20, 0x70, 0xC2, 0, 0, 0, 0, 0x10, 0x20, 0x70, 0xC2, 1, 0x2E, 0x64, 0x54, 0x73, 0x54, 0x0D, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x54, 0x73, 0x54, 0x0D};
+					// 0 0x102070C2 0x00000000 1 .dTsT 1 image/dTsT
+					}
+				};
+			},
+
+		INTERFACE_INFO
+			{
+			interface_uid = KEncoderInterfaceUidValue;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestExifDummyEncoderImplementationUidValue;
+					version_no = 1;
+					display_name = "dTst";
+					default_data = {0x3F}; // "?" - Won't match
+					opaque_data = {0, 0x10, 0x20, 0x70, 0xC3, 0, 0, 0, 0, 1, 0x2E, 0x64, 0x54, 0x73, 0x54, 0x0D, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x54, 0x73, 0x54, 0x0D};
+					// 0 0x102070C2 0x00000000 1 .dTsT 1 image/dTsT
+					}
+				};
+			},
+//
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderImplementationHWUidValue;
+					version_no = 1;
+					display_name = "JPEG";
+					default_data = {0xFF, 0xD8};
+					opaque_data = {2, 0, 0, 0x10, 0x1F, 0x45, 0xD8, 0, 0, 0, 0, 0x10, 0x27, 0x38, 0x02, 1, 0x2E, 0x64, 0x70, 0x67, 0x0D, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x6A, 0x70, 0x65, 0x67, 0x0D, 4, 0x10, 0x1F, 0x7C, 0x60, 0x10, 0x27, 0x37, 0x69, 0x10, 0x27, 0x37, 0xFF, 0x10, 0x27, 0x37, 0xFB};
+					// 2 0x102070C2 0x00000000 1 .jpg 1 image/jpeg 4 KUidICLJpegImageFrameInterface KFormatYUV422InterleavedUidValue KUidExifSupport KuidHwCodec
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderImplementationSWUidValue;
+					version_no = 1;
+					display_name = "JPEG";
+					default_data = {0xFF, 0xD8};
+					opaque_data = {2, 0, 0, 0x10, 0x1F, 0x45, 0xD8, 0, 0, 0, 0, 0x10, 0x27, 0x38, 0x02, 1, 0x2E, 0x64, 0x70, 0x67, 0x0D, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x6A, 0x70, 0x65, 0x67, 0x0D, 5, 0x10, 0x1F, 0x7C, 0x60, 0x10, 0x27, 0x37, 0x69, 0x10, 0x27, 0x37, 0xFF, 0x10, 0x27, 0x37, 0xFA, 0x10, 0x27, 0x37, 0xFC};
+					// 2 0x102070C2 0x00000000 1 .jpg 1 image/jpeg 5 KUidICLJpegImageFrameInterface KFormatYUV422InterleavedUidValue KUidExifSupport KuidSwCodec KUidDefaultCodec
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyZeroPropCountDecoderImplementationUidValue;
+					version_no = 1;
+					display_name = "JPEG";
+					default_data = {0xFF, 0xD8};
+					opaque_data = {2, 0, 0, 0x10, 0x1F, 0x45, 0xD8, 0, 0, 0, 0, 0x10, 0x27, 0x38, 0x02, 1, 0x2E, 0x64, 0x70, 0x67, 0x0D, 1, 0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x6A, 0x70, 0x65, 0x67, 0x0D, 0, 0x10, 0x27, 0x37, 0xFA};
+					// 2 0x102070C2 0x00000000 1 .jpg 1 image/jpeg 0 KuidSwCodec
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations = 
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyOnlyPropDecoderImplementationUidValue;
+					version_no = 1;
+					display_name = "JPEG";
+					default_data = {0xFF, 0xD8};
+					opaque_data = {2, 0, 0, 0x10, 0x1F, 0x45, 0xD8, 0, 0, 0, 0, 0x10, 0x27, 0x38, 0x02, 0, 0, 1, 0x10, 0x27, 0x37, 0xFA};
+					// 2 0x102070C2 0x00000000 0 0 1 KuidSwCodec
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = 0x101F45AD;
+			implementations =
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderExtCropUidValue;
+					version_no = 1;
+					display_name = "DummyDecoderCropExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									2,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x01, 0x00};	// CImageDecoder::EOptionExtCrop
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderExtStreamUidValue;
+					version_no = 1;
+					display_name = "DummyDecoderStreamExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									2,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x02, 0x00};	// CImageDecoder::EOptionExtStream
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderExtRotationUidValue;
+					version_no = 1;
+					display_name = "DummyDecoderRotationExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									3,
+									0x10, 0x27, 0x37, 0x63,		// KFormatYUVMonochromeUid
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x04, 0x00};	// CImageDecoder::EOptionExtRotation
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderExtMirrorHorizontalVerticalAxisUidValue;
+					version_no = 1;
+					display_name = "DummyDecoderMirrorHorizontalVerticalAxisExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									6,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x08, 0x00,		// CImageDecoder::EOptionExtMirrorHorizontalAxis
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x10, 0x00,		// CImageDecoder::EOptionExtMirrorVerticalAxis
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x18, 0x00};	// EOptionExtMirrorHorizontalAxis | EOptionExtMirrorVerticalAxis
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyDecoderExtScalingUidValue;
+					version_no = 1;
+					display_name = "DummyDecoderScalingExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									2,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x20, 0x00};	// CImageDecoder::EOptionExtScaling
+					}
+				};
+			},
+		INTERFACE_INFO
+			{
+			interface_uid = KEncoderInterfaceUidValue;
+			implementations =
+				{
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyEncoderExtStreamUidValue;
+					version_no = 1;
+					display_name = "DummyEncoderStreamExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									2,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x01, 0x00};	// CImageEncoder::EOptionExtStream
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyEncoderExtRotationUidValue;
+					version_no = 1;
+					display_name = "DummyEncoderRotationExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									2,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x02, 0x00};	// CImageEncoder::EOptionExtRotation
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					implementation_uid = KTestDummyEncoderExtUseWithSetThumbnailUidValue;
+					version_no = 1;
+					display_name = "DummyEncoderUseWithSetThumbnailExt";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									2,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x10, 0x00};	// CImageEncoder::EOptionExtUseWithSetThumbnail
+					},
+				BINARY_IMPLEMENTATION_INFO
+					{
+					// A test encoder that supports mirroring horizontally, vertically or both simultaneously.
+					implementation_uid = KTestDummyEncoderExtMirrorHorizontalVerticalAxisUidValue;
+					version_no = 1;
+					display_name = "DummyEncoderExtMirrorHorizontalVerticalUidValue";
+					default_data = {0x64, 0x75, 0x6D, 0x6D, 0x79}; // "dummy"
+					opaque_data = {	2,
+									0, 0,
+									0x10, 0x28, 0x34, 0x0C,		// KDummyImageType
+									0, 0, 0, 0,
+									0, 0, 0, 0,
+									1,							// ".dummy"
+									0x2E, 0x64, 0x75, 0x6D, 0x6D, 0x79, 0x0D,
+									1,							// "image/dummy"
+									0x69, 0x6D, 0x61, 0x67, 0x65, 0x2F, 0x64, 0x75, 0x6D, 0x6D, 0x79,0x0D,
+									6,
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x04, 0x00,		// CImageEncoder::EOptionExtMirrorHorizontalAxis
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x08, 0x00,		// CImageEncoder::EOptionExtMirrorVerticalAxis
+									0x10, 0x28, 0x33, 0xD8,		// KUidICLExtension
+									0x00, 0x00, 0x0C, 0x00};	// EOptionMirrorVertical | EOptionMirrorHorizontal
+					}
+				};
+
+			}
+		};
+	}
+
+