diff -r 2ed61feeead6 -r 6f7ceef7b1d1 khronosfws/openmax_al/src/mmf_adaptation/cmetadatautilityitf.h --- a/khronosfws/openmax_al/src/mmf_adaptation/cmetadatautilityitf.h Fri May 28 19:26:28 2010 -0500 +++ b/khronosfws/openmax_al/src/mmf_adaptation/cmetadatautilityitf.h Fri Jun 11 19:59:23 2010 -0500 @@ -1,7 +1,23 @@ +/* + * Copyright (c) 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: Metadata backend engine + * + */ + #ifndef CMETADATA_UTILITY_ITF_H #define CMETADATA_UTILITY_ITF_H - #ifdef __cplusplus #include @@ -14,7 +30,6 @@ #include #include - #define MAX_EXTENSION_SIZE 10 #define uint32 unsigned int @@ -22,112 +37,109 @@ class CHXMetadataUtilityItf; NONSHARABLE_CLASS(CMetadataUtilityItf) -{ + { public: - enum TValueEncodingType - { - EUnknownEncoding, - EAsciiEncoding, - EUnicodeEncoding, - EBinaryEncoding, - }; - - static CMetadataUtilityItf* New(char* uri); + enum TValueEncodingType + { + EUnknownEncoding, EAsciiEncoding, EUnicodeEncoding, EBinaryEncoding, + }; + + static CMetadataUtilityItf* New(char* uri); - CMetadataUtilityItf(); - virtual ~CMetadataUtilityItf(); - TInt ParseSource(char* uri); - TInt OpenSource(char* uri); - TInt CalculateNumMetadataItems(TUint*); - char* GetKey(TInt index); - TInt GetValueSize(TInt index); - TInt GetValue(TInt index, char* data, TInt maxLength, TInt* outSize, TInt* encodingType); + CMetadataUtilityItf(); + virtual ~CMetadataUtilityItf(); + TInt ParseSource(char* uri); + TInt OpenSource(char* uri); + TInt CalculateNumMetadataItems(TUint*); + char* GetKey(TInt index); + TInt GetValueSize(TInt index); + TInt GetValue(TInt index, char* data, TInt maxLength, TInt* outSize, + TInt* encodingType); - //helper function - //extracts left part of input descriptor upto (maxLen-1) and copies content in outPtr - //append a null terminator - static TInt ExtractUCS2(TDesC& inDes, char* outPtr,TInt maxLen); + //helper function + //extracts left part of input descriptor upto (maxLen-1) and copies content in outPtr + //append a null terminator + static TInt ExtractUCS2(TDesC& inDes, char* outPtr, TInt maxLen); private: - CS60MetadataUtilityItf* m_pS60Util; - CHXMetadataUtilityItf* m_pHXUtil; -}; - + CS60MetadataUtilityItf* m_pS60Util; + CHXMetadataUtilityItf* m_pHXUtil; + }; NONSHARABLE_CLASS(CS60MetadataUtilityItf) -{ + { public: - static CS60MetadataUtilityItf* New(); - ~CS60MetadataUtilityItf(); + static CS60MetadataUtilityItf* New(); + ~CS60MetadataUtilityItf(); - TInt CalculateNumMetadataItems(TUint*); - - char* GetKey(TInt index); - TInt GetValueSize(TInt index); - TInt GetValue(TInt index, char* data, TInt maxLength, TInt* outSize, TInt* encodingType); + TInt CalculateNumMetadataItems(TUint*); - TInt ParseSource(TDesC&); + char* GetKey(TInt index); + TInt GetValueSize(TInt index); + TInt GetValue(TInt index, char* data, TInt maxLength, TInt* outSize, + TInt* encodingType); + + TInt ParseSource(TDesC&); - char* KeyMapping(TMetaDataFieldId); - TInt ValueEncoding(TMetaDataFieldId); + char* KeyMapping(TMetaDataFieldId); + TInt ValueEncoding(TMetaDataFieldId); - static bool IsSupportedExtension(char* extn); + static bool IsSupportedExtension(char* extn); - TInt Reset(); + TInt Reset(); private: - + CS60MetadataUtilityItf(); void ConstructL(); - - CMetaDataUtility* pMetaDataUtility; //S60MetadataUtility - - TUint uNumMetadataItems; - -}; + + CMetaDataUtility* pMetaDataUtility; //S60MetadataUtility + + TUint uNumMetadataItems; + + }; NONSHARABLE_CLASS(CHXMetadataUtilityItf) -{ + { public: - static CHXMetadataUtilityItf* New(); - ~CHXMetadataUtilityItf(); + static CHXMetadataUtilityItf* New(); + ~CHXMetadataUtilityItf(); + + TInt CalculateNumMetadataItems(TUint*); + + char* GetKey(TInt index); - TInt CalculateNumMetadataItems(TUint*); - - char* GetKey(TInt index); - - TInt ValueEncoding(HXMetaDataKeys::EHXMetaDataId fldID); - TInt GetValueSize(TInt index); - TInt GetValue(TInt index, char* data, TInt maxLength, TInt* outSize, TInt* encodingType); - - TInt ParseSource(TDesC&); - char* KeyMapping(HXMetaDataKeys::EHXMetaDataId); - - TInt Reset(); + TInt ValueEncoding(HXMetaDataKeys::EHXMetaDataId fldID); + TInt GetValueSize(TInt index); + TInt GetValue(TInt index, char* data, TInt maxLength, TInt* outSize, + TInt* encodingType); + + TInt ParseSource(TDesC&); + char* KeyMapping(HXMetaDataKeys::EHXMetaDataId); + + TInt Reset(); private: - CHXMetadataUtilityItf(); + CHXMetadataUtilityItf(); void ConstructL(); - - CHXMetaDataUtility *pHXMetaDataUtility; - - TUint uNumMetadataItems; -}; + + CHXMetaDataUtility *pHXMetaDataUtility; + TUint uNumMetadataItems; + }; #else extern void* mmf_metadata_utility_init(char*); -extern void mmf_metadata_utility_destroy(void* context); +extern void mmf_metadata_utility_destroy(void* context); extern XAresult mmf_metadata_utility_parse_source(void* , char*); -extern XAresult mmf_get_item_count(void* context, XAuint32* itemCount); -extern XAresult mmf_get_key_size(void* context, XAuint32 keyIndex, XAuint32* keySize); -extern XAresult mmf_get_key(void* context, XAuint32 index,XAuint32 keySize, XAMetadataInfo *pKey); -extern XAresult mmf_get_value_size(void* context, XAuint32 index, XAuint32 *pValueSize); -extern XAresult mmf_get_value(void* context, XAuint32 index, XAuint32 valueSize, XAMetadataInfo *pValue); +extern XAresult mmf_get_item_count(void* context, XAuint32* itemCount); +extern XAresult mmf_get_key_size(void* context, XAuint32 keyIndex, XAuint32* keySize); +extern XAresult mmf_get_key(void* context, XAuint32 index,XAuint32 keySize, XAMetadataInfo *pKey); +extern XAresult mmf_get_value_size(void* context, XAuint32 index, XAuint32 *pValueSize); +extern XAresult mmf_get_value(void* context, XAuint32 index, XAuint32 valueSize, XAMetadataInfo *pValue); #endif //__cplusplus - #endif