diff -r bbf46f59e123 -r 25ffed67c7ef graphicscomposition/openwfsupport/inc/streammap.h --- a/graphicscomposition/openwfsupport/inc/streammap.h Tue Aug 31 16:31:06 2010 +0300 +++ b/graphicscomposition/openwfsupport/inc/streammap.h Wed Sep 01 12:39:21 2010 +0100 @@ -21,12 +21,14 @@ #include #include //for RFastLock #include //for RHashMap +#include + +#include class CSurfaceStream; class TSurfaceId; class MSurfaceUpdateServerProvider; class CExtensionContainer; -class RSurfaceManager; NONSHARABLE_CLASS(COpenWfcStreamMap): public CBase { @@ -38,6 +40,16 @@ */ IMPORT_C static COpenWfcStreamMap& InstanceL(); /** + * Expands the array to accommodate a specified number of key-value pairs. + * If the hash map already has enough space for the specified number of elements, no + * action is taken. Any elements already in the map are retained. + * + * @param aExpand The number of key-value pairs for which space should be allocated. + * @return KErrNone if the operation completed aInternalVersion. + * @return KErrNoMemory if sufficient memory could not be allocated. + */ + IMPORT_C TInt Reserve(TInt aExpand); + /** * Look up a specified TSurfaceId key in the associative array and return a pointer to the * corresponding to a native stream. The reference counter of the native stream is incremented by one. * @@ -96,7 +108,7 @@ * * @return A reference to the local SurfaceManager */ - IMPORT_C RSurfaceManager& SurfaceManager(); + RSurfaceManager& SurfaceManager(); /** * Returns a pointer to the main heap @@ -146,6 +158,14 @@ }; private: /** + * Copy constructor + */ + COpenWfcStreamMap(const COpenWfcStreamMap&); + /** + * Assignment operator + */ + COpenWfcStreamMap& operator= (const COpenWfcStreamMap&); + /** * Symbian constructor used with two stage construction pattern */ void ConstructL(); @@ -178,7 +198,7 @@ /** * Surface manager */ - RSurfaceManager* iSurfaceManager; + RSurfaceManager iSurfaceManager; RHeap *iMainHeap; //< --This points to main thread's heap--