|
1 // Copyright (c) 2005-2009 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 // |
|
15 |
|
16 TARGET oggplaycontroller.dll |
|
17 CAPABILITY ALL -TCB |
|
18 TARGETTYPE PLUGIN |
|
19 |
|
20 // ECom Dll recognition UID followed by the unique UID for this dll |
|
21 UID 0x10009D8D 0x01004303 |
|
22 VENDORID 0x70000001 |
|
23 |
|
24 SOURCEPATH ../../src/Plugin/Controller/Audio/OggVorbis/OggPlayController |
|
25 SOURCE OggPlayController.cpp |
|
26 SOURCE OggDecode.cpp |
|
27 |
|
28 USERINCLUDE ../../src/Plugin/Controller/Audio/OggVorbis/OggPlayController |
|
29 USERINCLUDE ../../src/Plugin/Controller/Audio/OggVorbis/oggutils/inc |
|
30 |
|
31 OS_LAYER_SYSTEMINCLUDE_SYMBIAN |
|
32 OS_LAYER_ESTLIB_SYSTEMINCLUDE |
|
33 |
|
34 START RESOURCE OggPlayController.RSS |
|
35 TARGET oggplaycontroller.rsc |
|
36 END |
|
37 |
|
38 LIBRARY euser.lib |
|
39 LIBRARY ecom.lib |
|
40 LIBRARY estlib.lib |
|
41 LIBRARY mmfdevsound.lib |
|
42 LIBRARY mmfserverbaseclasses.lib |
|
43 LIBRARY mmfcontrollerframework.lib |
|
44 LIBRARY mmfstandardcustomcommands.lib |
|
45 LIBRARY oggvorbisintutil.lib |
|
46 |
|
47 // OggVorbis C libraries are not alloc safe. So we create a separate heap for C library calls with enough space well before |
|
48 // the codec starts processing and we switch to the new heap before making calls to the methods in these libraries. |
|
49 // Chunk and Heap sizes are taken such a way that we have enough space on the new heap to avoid OOM situations to the |
|
50 // maximum extent possible. Also the malloc, calloc and realloc functions in the C libraries are modified to leave with KErrMemory |
|
51 // when the allocation fails. We TRAP the error and cleanup the new heap we had created. This way the library calls are made alloc safe. |
|
52 // SYMBIAN_SEP_HEAP is provided to enable/disable this separate heap mechanism. |
|
53 MACRO SYMBIAN_SEP_HEAP |
|
54 |
|
55 SMPSAFE |