os/graphics/fbs/fontandbitmapserver/sfbs/patchableconstants.cpp
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 // Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 // Defines all the patchable constants in fbserv.exe.
    15 // The definition of the constants must not be in the same file as the usage,
    16 // or the compiler will optimise them out, so put them all in here.
    17 // Note that existing patchable constants are declared as global,
    18 // i.e. not in a namespace, so I have continued the trend.
    19 // 
    20 //
    21 
    22 #include <e32def.h>
    23 
    24 
    25 /**
    26 @SYMPatchable
    27 @publishedPartner
    28 @released
    29 
    30 This constant determines the maximum size of the shared heap in the font and bitmap server.
    31 Up to the value of the constant, the size of the virtual address range reserved for this heap
    32 equals the amount of physical RAM memory. As available hardware RAM sizes increase in the future,
    33 it may become impossible to reserve a virtual address range that big, hence the need for an upper limit.
    34 @note	Default value: 64MB (0x04000000)
    35 @note   Emulator value 2MB (0x0200000)
    36 */
    37 #ifdef __WINS__
    38 EXPORT_C extern const TInt KFbServSharedHeapMaxSize = 0x00200000;
    39 #else
    40 EXPORT_C extern const TInt KFbServSharedHeapMaxSize = 0x04000000;
    41 #endif
    42 
    43 /**
    44 @SYMPatchable
    45 @internalTechnology
    46 
    47 This constant modifies the writable data paging mode used by the font and bitmap server.
    48 It is configured at rom build time via the following definitions in fbserv.iby:
    49 	SYMBIAN_GRAPHICS_FBSERV_PAGEDATA
    50 	SYMBIAN_GRAPHICS_FBSERV_UNPAGEDDATA
    51 	SYMBIAN_GRAPHICS_FBSERV_PAGE_BITMAP_DATA_ONLY
    52 	SYMBIAN_GRAPHICS_FBSERV_PAGE_BITMAP_DATA_AND_SHARED_HEAP_ONLY
    53 @note	Default value: (0x00) This does not modify the writable data paging mode.
    54 */
    55 EXPORT_C extern const TInt KFbServWritableDataPagingMode = 0x00;
    56 
    57 /**
    58 @SYMPatchable
    59 @publishedPartner
    60 @prototype
    61 
    62 This constant determines the maximum size of the GPU memory that the font and 
    63 bitmap server's glyph atlas can use.
    64 The glyph atlas will store glyphs in this memory.  When the glyph atlas reaches 
    65 this limit, old glyphs will be evicted from the cache to make space for new glyphs.
    66 @note	Default value: 0.5 MB (0x00080000).
    67 */
    68 EXPORT_C extern const TInt KFbServGlyphAtlasCacheLimit = 0x00080000;
    69 
    70 // Header files declaring these constants are included to confirm that the definition matches.
    71 // They are included at the end because otherwise the ARM compiler refuses to initialise the values.
    72 #if (__ARMCC_VERSION >= 310000)
    73 //#	include "SERVER.H"	// Commented out to prevent warning dllexport/dllimport conflict
    74 #else
    75 #	include "SERVER.H"
    76 #endif