diff -r 89d6a7a84779 -r 25a17d01db0c Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/iclexample_8h-source.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/iclexample_8h-source.html Fri Jan 22 18:26:19 2010 +0000 @@ -0,0 +1,281 @@ + + +TB10.1 Example Applications: examples/Multimedia/ICL/ICLExample/iclexample.h Source File + + + + +

examples/Multimedia/ICL/ICLExample/iclexample.h

Go to the documentation of this file.
00001 // iclexample.h
+00002 //
+00003 // // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
+00004 // All rights reserved.
+00005 // This component and the accompanying materials are made available
+00006 // under the terms of "Eclipse Public License v1.0"
+00007 // which accompanies this distribution, and is available
+00008 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
+00009 //
+00010 // Initial Contributors:
+00011 // Nokia Corporation - initial contribution.
+00012 //
+00013 // Contributors:
+00014 //
+00015 // Description:
+00016 //
+00017 //
+00018 
+00023 #ifndef __ICLEXAMPLE_H__
+00024 #define __ICLEXAMPLE_H__
+00025 
+00026 // Symbian platform includes
+00027 #include <bitmaptransforms.h>
+00028 #include <iclexifimageframe.h> 
+00029 #include <exifutility.h>
+00030 #include <e32cons.h>
+00031 
+00032 
+00033 // Index of the first frame of an image.
+00034 const TInt KFirstFrame = 0;
+00035 
+00036 // Literals
+00037 _LIT(KBitmapFile,"\\ICLExample\\smiley.bmp");
+00038 _LIT(KThumbFile,"\\ICLExample\\thumbimage.jpg");
+00039 _LIT(KYuvBitmap,"\\ICLExample\\yuvimage.jpg");
+00040 _LIT(KYuvDestBitmap,"\\ICLExample\\yuvdestimage.jpg");
+00041 _LIT(KDestStreamFile,"\\ICLExample\\encodedstreamimage.jpg");
+00042 _LIT(KDestRotateFile,"\\ICLExample\\encodedrotateimage.jpg");
+00043 _LIT(KMultiFrameClock,"\\ICLExample\\clock.gif");
+00044 _LIT(KBitmapComment,"\\ICLExample\\am475.gif");
+00045 _LIT(KBitmapFrameComment,"\\ICLExample\\comment.jpg");
+00046 _LIT(KBitmapExif,"\\ICLExample\\exifencode.jpg");
+00047 _LIT(KSourceBitmap,"\\ICLExample\\source.mbm");
+00048 _LIT(KBitmapRotateWhileEncodeToJpeg,"\\ICLExample\\sourcerotate.mbm");
+00049 _LIT(KTestFileName1, "\\ICLExample\\harbourbridge1.jpg");
+00050 _LIT(KTestFileName2, "\\ICLExample\\harbourbridge2.jpg");
+00051 _LIT(KTestFileName3, "\\ICLExample\\harbourbridge3.jpg");
+00052 _LIT(KTestFileName4, "\\ICLExample\\harbourbridge4.jpg");
+00053 _LIT(KTestBSOutputFileName, "\\ICLExample\\harbourbridgepanorama.jpg");
+00054 _LIT(KTestVFTOutputFileName, "\\ICLExample\\harbourbridgepanoramavt.jpg");
+00055 _LIT(KVFTTestFileName1, "\\ICLExample\\office1.jpg");
+00056 _LIT(KVFTTestFileName2, "\\ICLExample\\office2.jpg");
+00057 _LIT(KVFTTestFileName3, "\\ICLExample\\office3.jpg");
+00058 _LIT(KVFTTestFileName4, "\\ICLExample\\office4.jpg");
+00059 _LIT(KVFTTestFileName5, "\\ICLExample\\office5.jpg");
+00060 _LIT(KVFTTestFileName6, "\\ICLExample\\office6.jpg");
+00061 _LIT(KVFTTestRefFileName, "\\ICLExample\\office.mbm");
+00062 _LIT(KInputFileName,"c:\\ICLExample\\input_image.jpg");
+00063 _LIT(KInputFileName01,"c:\\ICLExample\\input_image01.jpg");
+00064 _LIT(KInputFileName02,"c:\\ICLExample\\input_image02.jpg");
+00065 _LIT(KInputFileName03,"c:\\ICLExample\\input_image03.jpg");
+00066 _LIT(KInputFileName04,"c:\\ICLExample\\input_image04.jpg");
+00067 _LIT(KInputOverlayFileName,"c:\\ICLExample\\overlay.png");
+00068 _LIT(KInputWithSpmoFileName,"c:\\ICLExample\\input_image_with_spmo.jpg");
+00069 _LIT(KOutputFileName, "c:\\ICLExample\\output_image.jpg");
+00070 _LIT(KOutputWithBasicEffectFileName, "c:\\ICLExample\\output_image_with_basiceffect.jpg");
+00071 _LIT(KOutputWithUndoFileName, "c:\\ICLExample\\output_image_with_undo.jpg");
+00072 _LIT(KOutputWithOverlayFileName,"c:\\ICLExample\\output_image_with_overlay.jpg");
+00073 _LIT(KOutputBitmapFileName,"c:\\ICLExample\\output_bitmap.mbm");
+00074 _LIT(KOutputBitmapFileName01,"c:\\ICLExample\\output_bitmap01.mbm");
+00075 _LIT(KOutputBitmapFileName02,"c:\\ICLExample\\output_bitmap02.mbm");
+00076 _LIT(KOutputBitmapFileName03,"c:\\ICLExample\\output_bitmap03.mbm");
+00077 _LIT(KOutputBitmapFileName04,"c:\\ICLExample\\output_bitmap04.mbm");
+00078 _LIT(KOutputWithSpmoFileName,"c:\\ICLExample\\output_image_with_spmo.jpg");
+00079 _LIT(KSpmoFileName, "c:\\ICLExample\\spmo.bin");
+00080 _LIT(KSourceJpgCapstest,"\\ICLExample\\capstest.jpg");
+00081 _LIT(KSourceJpgDatetree,"\\ICLExample\\datetree.jpg");
+00082 _LIT(KSourceJpgOverlay,"\\ICLExample\\overlay.jpg");
+00083 _LIT(KSourcePngOverlay,"\\ICLExample\\overlay.png");
+00084 _LIT(KSourceMbmOverlay,"\\ICLExample\\mbm32bpp_1.mbm");
+00085 _LIT(KSqueezeDestJpgDatetreeFileToFile,"\\ICLExample\\dest_datetreefiletofile.jpg");
+00086 _LIT(KSqueezeDestJpgDatetreeBufferToBuffer,"\\ICLExample\\dest_datetreebufffertobuffer.jpg");
+00087 _LIT(KAutoSqueezeDestJpgCapstest,"\\ICLExample\\dest_capstestautosqueze.jpg");
+00088 _LIT(KRotate90DestJpgCapstest, "\\ICLExample\\dest_capstestrotate90.jpg");
+00089 _LIT(KOverlayDestPngFileToFile, "\\ICLExample\\dest_overlayfile_filetofile.jpg");
+00090 _LIT(KOverlayDestJpgDataFileToFile, "\\ICLExample\\dest_overlaydata_filetofile.jpg");
+00091 _LIT(KOverlayDestBitmapFileToFile,"\\ICLExample\\dest_overlaybitmap_filetofile.jpg");
+00092 
+00093 _LIT(KTitle, "ICL Example" );
+00094 _LIT(KWelcomeMessage,"\n   Welcome to ICL Example\n");
+00095 _LIT(KPressAKeyMsg, "\nPress any key to step through the example\n");
+00096 _LIT(KExitMsg, "\nPress any key to exit the application ");
+00097 _LIT(KPressAKey, "\nPress any key to continue\n");
+00098 _LIT(KFailed, "\nFailed to complete");
+00099 
+00100 _LIT(KDecode, "\n   Decoding Bitmap");
+00101 _LIT(KDecodeFromDescriptorToBitmap, "\nDecode descriptor to bitmap\n");
+00102 _LIT(KDecodeFromDescriptorAndFile, "\nFile %S  successfully decoded from descriptor and file\n");
+00103 _LIT(KDecodeToHalfFourthAndEighthSizedBmp, "\nFile %S successfully decoded to half, fourth and eighth sized bitmap using reduction factor and reduced size\n");
+00104 _LIT(KSeparateThreadAndCancelAndContinueConvert, "\nFile %S successfully  decoded using separate thread and Continue convert\n");
+00105 _LIT(KDecodeUsingImageMask, "\nDecode using image mask\n");
+00106 _LIT(KDecodeToYuv, "\nFile %S successfully decoded to image frame Yuv\n");
+00107 _LIT(KStreamYuv, "\nFile %S successfully block stream decoded to image frame Yuv and block stream encoded to Jpeg file\n");
+00108 _LIT(KDecodeUsingSepThread, "\nDecode using separate thread\n");
+00109 _LIT(KAccessThumbnailToDecode, "\nJPEG thumbnail access\n");
+00110 _LIT(KAccessExifMetadata, "\nAccess Exif metadata\n");
+00111 _LIT(KDisplayingImageComments, "\nDecode and display image comments\n");
+00112 _LIT(KGettingMimeTypeOfSourceDescriptor, "\nGet the MIME type of a source image descriptor, and load a decoder using a MIME type\n");
+00113 _LIT(KRChunk, "aRChunkICL");
+00114 _LIT(KAccessExifThumbnailAndDecodeThumbnail, "\nEXIF And JPEG thumbnail accessed and thumbnail part of file %S decoded successfully\n");
+00115 _LIT(KImageMaskAndMultiFrameImageDecode, "\nFile %S successfully decoded using image mask and Multiframe image \n");
+00116 _LIT(KImageAndFrameComment, "\nImage comment and frame comment accessed successfully\n");
+00117 _LIT(KGettingMimeTypeFromSourceAndFile, "\nFile %S decoded successfully after getting the MIME type from source image\n");
+00118 
+00119 _LIT(KEncode, "\n    Encoding Bitmap");
+00120 _LIT(KFileEncode, "\nFile %S encoded successfully to descriptor\n");
+00121 _LIT(KEncodeImageWithThumbnail, "\nEncode a JPEG thumbnail of an image\n");
+00122 _LIT(KAccessToThumbnailAndExifSetting,"\nThumbnail access and setting Exif metadata to image successful\n");
+00123 _LIT(KFileRotate, "\nBitmap rotated successfully\n");
+00124 _LIT(KEncodeRotate, "\nBitmap encoded to file %S with rotation operation successful\n");
+00125 _LIT(KScaleBitmap, "\nBitmap scaled successfully including optional selection of low memory and quality algorithms\n");
+00126 _LIT(KSetSourceDestinationandResize, "\nResize using CImageTransform\n");
+00127 _LIT(KFileRotateAfterDecode, "\nFile %S rotated successfully after being decoded\n");
+00128 _LIT(KSetSourceAndDestinationAndResize, "\nSetting source and destination and resize and preserve image data successful\n");
+00129 _LIT8(KExifMetadata, "Smiley bitmap"); 
+00130 _LIT8(KBuf8ParamWriteVersion, "Add Exif data");
+00131 _LIT(KExifAndThumbnailAdded, "\nAdding thumbnail and Exif metadata successful\n");
+00132 _LIT(KAddThumbnailToJpegFile, "\nAdd thumbnail to JPEG file\n");
+00133 _LIT(KPluginLoadedSpecificToUID, "\nPlugin loaded according to specific uid\n");
+00134 _LIT(KScaledWithWithoutAndThresholdScaling, "\nScaling with and without mask and threshold scaling successful\n");
+00135 
+00136 _LIT(KPanoramaStitching, "\nPanorama stitching\n");
+00137 _LIT(KBPStitching, "\nBasic panorama stitching\n");
+00138 _LIT(KVFTStitching, "\nView Finder Image Tracking\n");
+00139 _LIT(KGeneratingSpmo, "\n    Generating Spmo");
+00140 _LIT(KGeneratingSpmoIteratively, "\n    Generating Spmo iteratively\n");
+00141 _LIT(KBasicImageProcessing, "\n    Basic image processing\n");
+00142 _LIT(KBasicEffectImageProcessing, "\n    Image processing with basic effects applied\n");
+00143 _LIT(KEffectImageProcessingWithUndo, "\n    Image processing with undo\n");
+00144 _LIT(KEffectImageProcessingWithPreview, "\n    Image processing with preview\n");
+00145 _LIT(KEffectImageProcessingWithOverlay, "\n    Image processing with overlay\n");
+00146 _LIT(KImageProcessingWithSpmo, "\n    Image processing with Spmo\n");
+00147 
+00148 _LIT(KImageTransform, "\n    Image Transform Functions");
+00149 _LIT(KSqueezeFileToFile, "\nSqueezing Jpg File to a Jpg File");
+00150 _LIT(KSqueezeBufferToBuffer, "\nSqueezing Jpg in Buffer to a Jpg in Buffer");
+00151 _LIT(KAutoSqueezeFileToFile, "\nAuto-Squeezing Jpg File to a Jpg File");
+00152 
+00153 _LIT(KRotateFileToFile, "\nRotating a Jpg File to a Jpg File");
+00154 
+00155 _LIT(KOverlayJpgDataFileToFile, "\nOverlay Jpg data to a Jpg File to a Jpg File");
+00156 _LIT(KOverlayPngFileToFile, "\nOverlay Png file to a Jpg File to a Jpg File");
+00157 _LIT(KOverlayBmpDataFileToFile, "\nOverlay Bmp data to a Jpg File to a Jpg File");
+00158 
+00159 class CActiveListener;
+00160 
+00179 typedef struct
+00180         {
+00181         TBool iClip;
+00182         TBool iRotate90;
+00183         TBool iMirrorVerticalAxis;
+00184         TInt iScalingCoeff;     // 1,-1 = Normal, -2 = Half, -3 = Quarter, -4 = Eighth.
+00185         const TText* iOutputFile;
+00186         }
+00187 TDecodeParams;
+00188 
+00189 class CIclExample: public CBase
+00190         {
+00191 public:
+00192         static CIclExample* NewLC();
+00193 
+00194         ~CIclExample();
+00195         CActiveListener* CreateAndInitializeActiveListenerLC();
+00196         void DecodeFromDescriptorToBitmapL(const TDesC& aFileName);
+00197         void DecodeFromFileToBitmapL(const TDesC& aFilename);
+00198         void DecodeToYuvFrameL(const TDesC& aFileName);
+00199         void AccessThumbnailToDecodeL(const TDesC& aFileName);
+00200         void AccessExifMetadataL(const TDesC& aFileName);
+00201         void DecodeUsingSepThreadL(const TDesC& aFileName);
+00202         void DecodeToHalfFourthAndEighthSizedBitmapL(const TDesC& aFileName);
+00203         void DecodeUsingImageMaskL(const TDesC& aFileName);
+00204         void MultiFrameImageDecodeL(const TDesC& aFileName);
+00205         void DecodeTheThumbnailL(const TDesC& aFileName);
+00206         void DecodeUsingContinueConvertL(const TDesC& aFileName);
+00207         void DisplayingImageCommentsL(const TDesC& aFileName);
+00208         void DisplayingFrameCommentsL(const TDesC& aFileName);
+00209         void GettingMimeTypeOfSourceDescriptorL(const TDesC& aFileName);
+00210         void GettingMimeTypeOfSourceFileL(const TDesC& aFileName);
+00211         void EncodeBitmapToDescriptorL(const TDesC& aFileName);
+00212         void EncodeImageWithThumbnailL(const TDesC& aFileName);
+00213         void SettingExifMetadataL(const TDesC& aFileName);
+00214         void RotateBitmapL(const TDesC& aFileName);
+00215         void ScaleBitmapL(const TDesC& aFileName);
+00216         void DecodeWithRotateL(const TDesC& aFileName);
+00217         void SetSourceDestinationandResizeL(const TDesC& aFileName);
+00218         void SettingWithUseOfPreserveImageDataL(const TDesC& aFileName1,const TDesC& aFileName2);
+00219         void AddThumbnailToJpegFileL(const TDesC& aSrcFileName, const TDesC& aDesFileName );
+00220         void AddExifDataToJpegFileL(const TDesC& aFileName);
+00221         void LoadPluginByUidL(const TDesC& aFilename, TUid aCodecUid);
+00222         void BlockStreamDecodeAndEncodeYuvFrameL(const TDesC& aSrcFileName, const TDesC& aDestFileName);
+00223         void EncodeBitmapToFileUsingOperationExtensionL(const TDesC& aSrcFileName, const TDesC& aDestFileName);
+00224 
+00225         void ClipAndRotateDuringDecodeL();
+00226         
+00227         //panorama stitching
+00228         void BasicPanoramaStitchingL();
+00229         void ViewFinderImageTrackingL();
+00230         // Spmo
+00231         void GeneratingSpmoL();
+00232         void GeneratingSpmoIterativelyL();
+00233 
+00234         // Image Processor
+00235         void BasicImageProcessingL();
+00236         void BasicEffectImageProcessingL();
+00237         void EffectImageProcessingWithUndoL();
+00238         void EffectImageProcessingWithPreviewL();
+00239         void EffectImageProcessingWithOverlayL();
+00240         void ImageProcessingWithSpmoL();
+00241 
+00242         // Transform
+00243         void SqueezeJpgFileToFileL(const TDesC& aSrcFileName, const TDesC& aDestFileName);
+00244         void SqueezeJpgBufferToBufferL(const TDesC& aSrcFileName, const TDesC& aDestFileName);
+00245         void AutoSqueezeJpgFileToFileL(const TDesC& aSrcFileName, const TDesC& aDestFileName);
+00246 
+00247         void RotateJpgFileToFileL(const TDesC& aSrcFileName, const TDesC& aDestFileName);
+00248 
+00249         void OverlayJpgDataToJpgFileToFileL(const TDesC& aSrcFileName, const TDesC& aOverlayFileName, const TDesC& aDestFileName);      
+00250         void OverlayPngFileToJpgFileToFileL(const TDesC& aSrcFileName, const TDesC& aOverlayFileName, const TDesC& aDestFileName);
+00251         void OverlayBmpDataToJpgFileToFileL(const TDesC& aSrcFileName, const TDesC& aOverlayFileName, const TDesC& aDestFileName);
+00252 
+00253 public:
+00254         inline void SetConsole(CConsoleBase* aConsole); 
+00255 
+00256         
+00257 private:
+00258         CIclExample();
+00259         void ConstructL();
+00260         
+00261         TPtr8 LoadImageIntoMemoryLC(const TDesC& aFileName);    
+00262 
+00263 private:
+00264         /* File server session */
+00265         RFs iFs;
+00266         CConsoleBase* iConsole; // owned in MainL() 
+00267     };
+00268 
+00269 inline void CIclExample::SetConsole(CConsoleBase* aConsole)
+00270         {
+00271         iConsole = aConsole;
+00272         }
+00273   
+00278 class CActiveListener : public CActive
+00279         {
+00280 public:
+00281         static CActiveListener* NewLC();
+00282         ~CActiveListener();     
+00283 
+00284         void Initialize();
+00285         TBool IsRequestCancelled();
+00286         
+00287 private:
+00288         CActiveListener();
+00289 
+00290         virtual void RunL();
+00291         virtual void DoCancel();
+00292         };
+00293         
+00294 #endif //__ICLEXAMPLE_H__
+00295 
+

Generated on Thu Jan 21 10:32:59 2010 for TB10.1 Example Applications by  + +doxygen 1.5.3
+ +