Fix for bug 2283 (RVCT 4.0 support is missing from PDK 3.0.h)
Have multiple extension sections in the bld.inf, one for each version
of the compiler. The RVCT version building the tools will build the
runtime libraries for its version, but make sure we extract all the other
versions from zip archives. Also add the archive for RVCT4.
// Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of the License "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:
// e32\include\d32video.h
//
//
#ifndef __D32VIDEO_H__
#define __D32VIDEO_H__
#include <e32std.h>
#include <e32ver.h>
#include <e32twin.h>
//
enum TColour {EWhite=0xf, EWhite1=0xe, EWhite2=0xd, EWhite3=0xc, EWhite4=0xb,
ELightGrey=0xa, ELightGrey1=9, ELightGrey2=8, ELightGrey3=7, ELightGrey4=6,
EDarkGrey=5, EDarkGrey1=4, EDarkGrey2=3, EDarkGrey3=2, EDarkGrey4=1,
EBlack=0
};
//
const TUint KCapsHues2=0x00000001;
const TUint KCapsHues4=0x00000002;
const TUint KCapsHues16=0x00000004;
const TUint KCapsWidth640=0x01;
const TUint KCapsHeight240=0x01;
//
class TVideoCapsV01
{
public:
TInt iNumHues;
TInt iWidth;
TInt iHeight;
};
typedef TPckgBuf<TVideoCapsV01> TVideoCaps;
class TCapsDevVideoV01
{
public:
TVersion version;
};
//
class TBlitInfo
{
public:
inline TBlitInfo(const TText* aBuffer,const TColour aColour, const TInt aLength,const TInt aX, const TInt aY);
inline TBlitInfo();
public:
const TText* iBuffer;
const TColour iColour;
TInt iLength;
const TInt iX;
const TInt iY;
private:
TBlitInfo& operator =(TBlitInfo & aBlitInfo);
};
class TPixelInfo
{
public:
inline TPixelInfo(const TInt aX, const TInt aY, const TColour aColour);
inline TPixelInfo();
public:
const TColour iColour;
const TInt iX;
const TInt iY;
private:
TPixelInfo& operator =(TPixelInfo & aPixelInfo);
};
struct TPixelLine
{
TDes8* iPixels;
TInt iNoOfPixels;
};
class RDeviceVideo : public RBusLogicalChannel
{
public:
enum TVer {EMajorVersionNumber=1,EMinorVersionNumber=0,EBuildVersionNumber=KE32BuildVersionNumber};
enum TControl {EControlStart,EControlMode,EControlSetMode,EControlCaps,EControlSetPaletteEntry,
EControlBlit,EControlSetPixel,EControlGetPixel,EControlSetWord,EControlGetWord,
EControlSetLine,EControlGetLine,EControlScrollUp,EControlClear};
public:
inline TInt Open();
inline void Start();
inline TVersion VersionRequired() const;
inline void Caps(TDes8 &aCaps);
inline void SetPaletteEntry(TInt aIndex,TUint aEntry);
inline void Blit(TDes8 &aBlitInfo);
inline void SetPixel(TDes8 &aPixelInfo);
inline TInt SetMode(TVideoMode aMode);
inline void Mode(TVideoMode *aMode);
inline void ScrollUp(const TRect& aRect);
inline void Clear(const TRect& aRect);
inline TInt GetPixel(const TPoint& aPoint);
inline void SetWord(const TPoint& aPoint,TInt& aWord);
inline TInt GetWord(const TPoint &aPoint);
inline void SetLine(const TPoint& aPoint,const TPixelLine& aPixelLine);
inline void GetLine(const TPoint& aPoint,TPixelLine& aPixelLine);
};
#include "d32video.inl"
#endif