1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/epoc32/include/mw/attrlut.h Wed Mar 31 12:27:01 2010 +0100
1.3 @@ -0,0 +1,79 @@
1.4 +// Copyright (c) 2000-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 +// which accompanies this distribution, and is available
1.9 +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.10 +//
1.11 +// Initial Contributors:
1.12 +// Nokia Corporation - initial contribution.
1.13 +//
1.14 +// Contributors:
1.15 +//
1.16 +// Description:
1.17 +// Attribute Look-Up-Table header
1.18 +// The Attribute Lookup Table maintains a global set of unique IDs to be defined for document
1.19 +// node attributes and language tags. It does this by generating a unique ID for any descriptor
1.20 +// passed to it. This descriptor is in fact a pointer to a copy of the string. Once a string
1.21 +// has been seen once, any further references to it will map back to the same ID (pointer)
1.22 +// value.
1.23 +//
1.24 +//
1.25 +
1.26 +#if !defined(__CWAPENGINE_LUT_H__)
1.27 +#define __CWAPENGINE_LUT_H__
1.28 +
1.29 +#include <e32base.h>
1.30 +
1.31 +class RTest;
1.32 +class CAttributeLookupTableNode;
1.33 +
1.34 +//##ModelId=3B666BC70189
1.35 +
1.36 +class CAttributeLookupTable : public CBase
1.37 +/** Provides an attribute lookup table, which maintains a global set of unique IDs to be defined
1.38 + for document node attributes and language tags.
1.39 +
1.40 + It does this by generating a unique (in the scope of the lookup table object) ID for any string
1.41 + passed to it. Once a string has been seen once, any further references to it will map back to the
1.42 + same ID value.
1.43 +
1.44 + @publishedAll
1.45 + @released
1.46 +*/
1.47 +{
1.48 +public:
1.49 + //##ModelId=3B666BC701E3
1.50 + IMPORT_C ~CAttributeLookupTable();
1.51 + //##ModelId=3B666BC701DC
1.52 + IMPORT_C static CAttributeLookupTable* CAttributeLookupTable::NewL();
1.53 + //##ModelId=3B666BC701DA
1.54 + IMPORT_C const HBufC* Des2IDL( const TDesC& ); // map descriptor to ID
1.55 + //##ModelId=3B666BC701D3
1.56 + IMPORT_C const HBufC* KeyExists( const TDesC& ); // check to see if the given descriptor already exists
1.57 + //##ModelId=3B666BC701D2
1.58 + IMPORT_C void Reset(); // clear the table
1.59 +
1.60 + // debug hook
1.61 + typedef enum{
1.62 + EPrint,
1.63 + EPrintWholeTable
1.64 + } TDebugSelectorType;
1.65 + //##ModelId=3B666BC701C6
1.66 + IMPORT_C void Debug( TDebugSelectorType aSelector, TAny* aParam1, TAny* aParam2 );
1.67 +
1.68 +private:
1.69 + //##ModelId=3B666BC701C5
1.70 + CAttributeLookupTable();
1.71 + //##ModelId=3B666BC701BF
1.72 + void ConstructL();
1.73 + //##ModelId=3B666BC701BD
1.74 + CAttributeLookupTableNode* FindDes( const TDesC& );
1.75 + //##ModelId=3B666BC701BB
1.76 + TUint Hash( const TDesC& );
1.77 + //##ModelId=3B666BC701A9
1.78 + CArrayPtrFlat<CArrayPtrSeg<CAttributeLookupTableNode> >* iList;
1.79 +};
1.80 +
1.81 +
1.82 +#endif // __CWAPENGINE_LUT_H__