1.1 --- a/epoc32/include/mmf/common/mmfcontrollerpluginresolver.h Wed Mar 31 12:27:01 2010 +0100
1.2 +++ b/epoc32/include/mmf/common/mmfcontrollerpluginresolver.h Wed Mar 31 12:33:34 2010 +0100
1.3 @@ -1,9 +1,9 @@
1.4 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 // All rights reserved.
1.6 // This component and the accompanying materials are made available
1.7 -// 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.8 +// under the terms of "Eclipse Public License v1.0"
1.9 // which accompanies this distribution, and is available
1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
1.12 //
1.13 // Initial Contributors:
1.14 // Nokia Corporation - initial contribution.
1.15 @@ -51,44 +51,6 @@
1.16 */
1.17 typedef RPointerArray<CMMFControllerImplementationInformation> RMMFControllerImplInfoArray;
1.18
1.19 -/**
1.20 -@internalComponent
1.21 -
1.22 -Interface to be implemented by customers of the class TaggedDataParser.
1.23 -*/
1.24 -class MTaggedDataParserClient
1.25 - {
1.26 -public:
1.27 - virtual void ProcessTaggedDataL(const TDesC8& aTag, const TDesC8& aData) = 0;
1.28 - };
1.29 -
1.30 -/**
1.31 -@internalComponent
1.32 -
1.33 -Utility class used to parse data separated by xml-style tags.
1.34 -*/
1.35 -class TaggedDataParser
1.36 - {
1.37 -public:
1.38 -
1.39 - /**
1.40 - Splits aData into xml-style tags and values, and gets aClient to process each tag/value pair.
1.41 - */
1.42 - static void ParseTaggedDataL(const TDesC8& aData, MTaggedDataParserClient& aClient);
1.43 -
1.44 - /**
1.45 - Converts a string to a uid. If the string begin with "0x" it will be parsed as Hex, else Decimal.
1.46 - */
1.47 - static void ConvertTextToUidL(const TDesC8& aData, TUid& aUid);
1.48 -
1.49 - /**
1.50 - Converts a string to a TUint. The string must begin with "0x" and be 10 characters long,
1.51 - otherwise it is considered corrupt.
1.52 - */
1.53 - static void ConvertTextToTUintL(const TDesC8& aData, TUint& aUid);
1.54 -
1.55 - };
1.56 -
1.57 class CMatchData;
1.58
1.59 class CDesC8Array;
1.60 @@ -229,6 +191,21 @@
1.61 RArray<TUid> iMediaIds;
1.62 };
1.63
1.64 +#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
1.65 +#include <mmf/common/taggeddataparser.h>
1.66 +#endif
1.67 +
1.68 +/**
1.69 +@publishedAll
1.70 +
1.71 +Interface to be implemented by customers of the class TaggedDataParser.
1.72 +*/
1.73 +class MTaggedDataParserClient
1.74 + {
1.75 +public:
1.76 + virtual void ProcessTaggedDataL(const TDesC8& aTag, const TDesC8& aData) = 0;
1.77 + };
1.78 +
1.79 /**
1.80 @publishedAll
1.81 @released
1.82 @@ -525,7 +502,7 @@
1.83 @since 7.0s
1.84 */
1.85 IMPORT_C TUint HeapSpaceRequired() const;
1.86 -
1.87 +
1.88 /**
1.89 Queries the ECom registry for the play formats supported.
1.90
1.91 @@ -600,6 +577,15 @@
1.92 @internalTechnology
1.93 */
1.94 IMPORT_C TBool SupportsSecureDRMProcessMode() const;
1.95 +
1.96 + /**
1.97 + Returns the stack space required by this controller.
1.98 +
1.99 + @return The stack space required.
1.100 +
1.101 + @internalTechnology
1.102 + */
1.103 + IMPORT_C TUint StackSize() const;
1.104
1.105 protected:
1.106
1.107 @@ -702,6 +688,14 @@
1.108 */
1.109 void SetNetworkCapabilityL(const TDesC8& aNetworkCapable);
1.110
1.111 + /**
1.112 + Parses aData to get the size of the stack the controller requires.
1.113 +
1.114 + @internalTechnology
1.115 + */
1.116 + void SetStackSizeL(const TDesC8& aData);
1.117 +
1.118 +
1.119 private:
1.120
1.121 /**
1.122 @@ -728,7 +722,7 @@
1.123 The heap space required by this controller
1.124 */
1.125 TUint iHeapSpaceRequired;
1.126 -
1.127 +
1.128 /**
1.129 The Uri scheme supported by this plugin
1.130 */
1.131 @@ -748,6 +742,10 @@
1.132 Secure DRM process model supported by this controller
1.133 */
1.134 TBool iSupportsSecureDRMProcessMode;
1.135 + /**
1.136 + The stack space required by this controller
1.137 + */
1.138 + TUint iStackSize;
1.139 };
1.140
1.141
1.142 @@ -953,7 +951,7 @@
1.143
1.144 /**
1.145 @publishedPartner
1.146 - @prototype
1.147 + @released
1.148
1.149 The match will be based on Uri details.
1.150 */
1.151 @@ -1020,7 +1018,7 @@
1.152
1.153 /**
1.154 @publishedPartner
1.155 - @prototype
1.156 + @released
1.157
1.158 Sets this object to match to uri scheme and file extension specified by a URI.
1.159
1.160 @@ -1065,7 +1063,7 @@
1.161
1.162 /**
1.163 @publishedPartner
1.164 - @prototype
1.165 + @released
1.166
1.167 Returns the uri scheme used to perform the plugin match.
1.168
1.169 @@ -1257,43 +1255,6 @@
1.170 CMMFControllerSecureDrmPluginSelectionParameters();
1.171 };
1.172
1.173 -class CMmfRecognizerUtil; // declared here.
1.174 -/**
1.175 -@internalAll
1.176 -
1.177 -MMF utility class used by MMF recognizer
1.178 -Maintains an array of CMMFControllerImplementationInformation objects
1.179 -so that data headers can be speedily matched against.
1.180 -Updates the array when notified by ECOM of a change to the global
1.181 -interface implementation registration data.
1.182 -*/
1.183 -NONSHARABLE_CLASS( CMmfRecognizerUtil ): public CBase
1.184 - {
1.185 -public:
1.186 - enum TMatchLevel
1.187 - {
1.188 - EMatchNone, //no match
1.189 - EMatchData, //data match only
1.190 - EMatchName //suffix and data match
1.191 - };
1.192 -public:
1.193 - IMPORT_C static void GetMimeTypesL(CDesC8Array* aMimeTypes);
1.194 -
1.195 - IMPORT_C static CMmfRecognizerUtil* NewL();
1.196 -
1.197 - ~CMmfRecognizerUtil();
1.198 - IMPORT_C TMatchLevel GetMimeTypeL(const TDesC& aFileName, const TDesC8& aImageData, TDes8& aMimeType);
1.199 -
1.200 -private:
1.201 - CMmfRecognizerUtil();
1.202 - void ConstructL();
1.203 -
1.204 -private:
1.205 - class CBody;
1.206 - CBody* iBody;
1.207 - };
1.208 -
1.209 -
1.210 /**
1.211 @publishedAll
1.212 @released