1.1 --- a/epoc32/include/animationframe.h Tue Nov 24 13:55:44 2009 +0000
1.2 +++ b/epoc32/include/animationframe.h Tue Mar 16 16:12:26 2010 +0000
1.3 @@ -1,1 +1,92 @@
1.4 -animationframe.h
1.5 +// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
1.6 +// All rights reserved.
1.7 +// This component and the accompanying materials are made available
1.8 +// 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.9 +// which accompanies this distribution, and is available
1.10 +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.11 +//
1.12 +// Initial Contributors:
1.13 +// Nokia Corporation - initial contribution.
1.14 +//
1.15 +// Contributors:
1.16 +//
1.17 +// Description:
1.18 +//
1.19 +
1.20 +#ifndef __ANIMATIONFRAME_H__
1.21 +#define __ANIMATIONFRAME_H__
1.22 +
1.23 +#include <icl/imagedata.h>
1.24 +
1.25 +class CFbsBitmap;
1.26 +
1.27 +/**
1.28 +Data format for individual bitmap format animation frames.
1.29 +
1.30 +Animators and data providers which use the "bitmap" data type use objects
1.31 +of this type to transfer data.
1.32 +
1.33 +You do not need to instantiate an object of this type unless you are writing
1.34 +a new data provider.
1.35 +
1.36 +@see CBitmapAnimator
1.37 +@see CICLAnimationDataProvider
1.38 +@publishedAll
1.39 +@released
1.40 +*/
1.41 +class CAnimationFrame : public CBase
1.42 + {
1.43 +public:
1.44 + /** Structure used for passing a CAnimationFrame safely over a
1.45 + client/server connection.*/
1.46 + struct THandles
1.47 + {
1.48 + /** A handle to the bitmap into which the decoded frame(s) are put */
1.49 + TInt iBitmapHandle;
1.50 + /** The bitmap mask for the changed area for this frame */
1.51 + TInt iMaskHandle;
1.52 + /** General frame info provided by all plugins */
1.53 + TFrameInfo iFrameInfo;
1.54 + };
1.55 +public:
1.56 + virtual ~CAnimationFrame();
1.57 + IMPORT_C static CAnimationFrame* NewL();
1.58 + IMPORT_C static CAnimationFrame* NewL(const THandles& aHandles);
1.59 + IMPORT_C void GetHandles(THandles & aHandles) const;
1.60 + IMPORT_C void SetHandlesL(const THandles & aHandles);
1.61 + IMPORT_C void CreateL(const TFrameInfo& aFrameInfo);
1.62 + /** Returns the bitmap image for the changed area for this frame
1.63 + @return A pointer to a CFbsBitmap */
1.64 + CFbsBitmap* Bitmap() { return iBitmap; }
1.65 + /** Returns the bitmap image for the changed area for this frame
1.66 + @return A pointer to a const CFbsBitmap */
1.67 + const CFbsBitmap* Bitmap() const { return iBitmap; }
1.68 + /** Returns the bitmap mask for the changed area for this frame
1.69 + @return A pointer to a CFbsBitmap */
1.70 + CFbsBitmap* Mask() { return iMask; }
1.71 + /** Returns the bitmap mask for the changed area for this frame
1.72 + @return A pointer to a const CFbsBitmap */
1.73 + const CFbsBitmap* Mask() const { return iMask; }
1.74 + /** Returns information about the frame.
1.75 + @return A TFrameInfo */
1.76 + TFrameInfo& FrameInfo() { return iFrameInfo; }
1.77 + /** Returns information about the frame.
1.78 + @return A const TFrameInfo */
1.79 + const TFrameInfo& FrameInfo() const { return iFrameInfo; }
1.80 +protected:
1.81 + IMPORT_C virtual void CAnimationFrame_Reserved1();
1.82 + IMPORT_C virtual void CAnimationFrame_Reserved2();
1.83 +private:
1.84 + TInt iCAnimationFrame_Reserved;
1.85 +private:
1.86 + CAnimationFrame() {};
1.87 + CAnimationFrame(const CAnimationFrame&); // no implementation
1.88 + CAnimationFrame& operator=(const CAnimationFrame&); // no implementation
1.89 + void ConstructL();
1.90 +private:
1.91 + CFbsBitmap* iBitmap;
1.92 + CFbsBitmap* iMask;
1.93 + TFrameInfo iFrameInfo;
1.94 + };
1.95 +
1.96 +#endif //__ANIMATIONFRAME_H__