--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inc/glxthumbnailattributeinfo.inl Fri Mar 19 09:28:59 2010 +0200
@@ -0,0 +1,107 @@
+/*
+* Copyright (c) 2008-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: Thumbnail Info
+*
+*/
+
+
+
+#include <fbs.h>
+
+// ---------------------------------------------------------------------------
+// GlxFullThumbnailAttributeId
+// ---------------------------------------------------------------------------
+//
+inline TUint GlxFullThumbnailAttributeId(TBool aHighQuality,
+ TInt aWidth, TInt aHeight)
+ {
+ return ((aHighQuality ? 0xA0000000u : 0x80000000u)
+ | ((aWidth & 0x7FFFu) << 15) | (aHeight & 0x7FFFu));
+ }
+
+// ---------------------------------------------------------------------------
+// GlxZoomedThumbnailAttributeId
+// ---------------------------------------------------------------------------
+//
+inline TUint GlxZoomedThumbnailAttributeId(TInt aZoomLevel,
+ TInt aXIndex, TInt aYIndex)
+ {
+ return (((aZoomLevel & 0x7u) << 28)
+ | ((aXIndex & 0xFFFu) << 12) | (aYIndex & 0xFFFu));
+ }
+
+// ---------------------------------------------------------------------------
+// GlxIsFullThumbnailAttribute
+// ---------------------------------------------------------------------------
+//
+inline TBool GlxIsFullThumbnailAttribute(TUint aAttributeId)
+ {
+ return (aAttributeId & 0x80000000u);
+ }
+
+// ---------------------------------------------------------------------------
+// GlxZoomedThumbnailZoomLevel
+// ---------------------------------------------------------------------------
+//
+inline TInt GlxZoomedThumbnailZoomLevel(TUint aAttributeId)
+ {
+ return (aAttributeId >> 28) & 0x7u;
+ }
+
+// ---------------------------------------------------------------------------
+// C++ default constructor can NOT contain any code that might leave.
+// ---------------------------------------------------------------------------
+//
+inline CGlxThumbnailAttribute::CGlxThumbnailAttribute()
+ {
+ }
+
+// ---------------------------------------------------------------------------
+// Destructor
+// ---------------------------------------------------------------------------
+//
+inline CGlxThumbnailAttribute::~CGlxThumbnailAttribute()
+ {
+ delete iBitmap;
+ }
+
+// ---------------------------------------------------------------------------
+// ExternalizeL
+// ---------------------------------------------------------------------------
+//
+inline void CGlxThumbnailAttribute::ExternalizeL(RWriteStream& aStream) const
+ {
+ aStream.WriteInt32L(iThumbnailQuality);
+ aStream.WriteInt32L(iCroppingRect.iTl.iX);
+ aStream.WriteInt32L(iCroppingRect.iTl.iY);
+ aStream.WriteInt32L(iCroppingRect.iBr.iX);
+ aStream.WriteInt32L(iCroppingRect.iBr.iY);
+ aStream.WriteInt32L(iDimensions.iWidth);
+ aStream.WriteInt32L(iDimensions.iHeight);
+ }
+
+// ---------------------------------------------------------------------------
+// InternalizeL
+// ---------------------------------------------------------------------------
+//
+void CGlxThumbnailAttribute::InternalizeL(RReadStream& aStream)
+ {
+ iThumbnailQuality=aStream.ReadInt32L();
+ iCroppingRect.iTl.iX=aStream.ReadInt32L();
+ iCroppingRect.iTl.iY=aStream.ReadInt32L();
+ iCroppingRect.iBr.iX=aStream.ReadInt32L();
+ iCroppingRect.iBr.iY=aStream.ReadInt32L();
+ iDimensions.iWidth=aStream.ReadInt32L();
+ iDimensions.iHeight=aStream.ReadInt32L();
+ }