os/graphics/graphicsdeviceinterface/directgdiadaptation/hwsrc/directgdiimagetargetimpl.h
Update contrib.
1 // Copyright (c) 2007-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".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
18 @internalComponent Reference implementation of Open VG hardware accelerated Direct GDI adaptation.
21 #ifndef DIRECTGDIIMAGETARGETIMPL_H
22 #define DIRECTGDIIMAGETARGETIMPL_H
24 #include "directgdiimageref.h"
26 #include <VG/openvg.h>
27 #include <graphics/sgimage.h>
28 #include <e32hashtab.h>
31 class CDirectGdiDriverImpl;
34 Container for holding an RDirectGdiImageTarget and its associated EGLSurface.
35 Reference counted as more than one CDirectGdiContext is allowed to use the same RDirectGdiImageTarget.
37 NONSHARABLE_CLASS(CDirectGdiImageTargetImpl): public CDirectGdiImageRef
40 static TInt New(CDirectGdiImageTargetImpl*& aImage, CDirectGdiDriverImpl& aDriver, const RSgImage& aSgImage, RHashMap<TInt, EGLContext>& aContexts, RHashMap<TInt, EGLConfig>& aConfigs, EGLContext& aSharedContext);
41 virtual ~CDirectGdiImageTargetImpl();
45 CDirectGdiImageTargetImpl(CDirectGdiDriverImpl& aDriver);
46 TInt Construct(const RSgImage& aSgImage, RHashMap<TInt, EGLContext>& aContexts, RHashMap<TInt, EGLConfig>& aConfigs, EGLContext& aSharedContext);
49 CDirectGdiDriverImpl& iDriver;
54 #endif /*DIRECTGDIIMAGETARGETIMPL_H_*/