7 #include "sdlepocapi.h"
11 typedef void (*TCopyFunction
)(const CDsa
& aDsa
, TUint32
* aTarget
, const TUint8
* aSource
, TInt aBytes
);
13 class CDsa
: public CBase
16 inline bool IsDsaAvailable() const;
18 static CDsa
* CreateL(RWsSession
& aSession
);
23 TInt
AllocSurface(int bpp
);
25 TInt
SetPalette(TInt aFirst
, TInt aCount
, TUint32
* aPalette
);
26 bool Blit(const TUint8
* aBits
, const TSize
& aSize
);
28 RWsSession
& Session();
30 CDsa
* CreateGlesDsaL();
34 virtual void ConstructL(RWindow
& aWindow
, CWsScreenDevice
& aDevice
);
36 virtual TUint8
* LockSurface() = 0;
37 virtual void UnlockHwSurface() = 0;
40 bool m_updateWholeScreen
;
45 CDsa(RWsSession
& aSession
);
51 virtual void CreateSurfaceL() = 0;
53 void ClipCopy(TUint8
* aTarget
, const TUint8
* aSource
, const TRect
& aUpdateRect
, const TRect
& aSourceRect
) const;
54 static void Copy256(const CDsa
& aDsa
, TUint32
* aTarget
, const TUint8
* aSource
, TInt aBytes
);
55 static void CopySlow(const CDsa
& aDsa
, TUint32
* aTarget
, const TUint8
* aSource
, TInt aBytes
);
56 static void CopyMem(const CDsa
& aDsa
, TUint32
* aTarget
, const TUint8
* aSource
, TInt aBytes
);
58 void SetCopyFunction();
64 TCopyFunction iCopyFunction
;
66 TCopyFunction iCFTable
[3];
71 inline bool CDsa::IsDsaAvailable() const