We need a way to pass flags to rombuilds in Raptor via extension flm interfaces, so that the CPP pass
of the rom input files can be informed what toolchain we are building with and conditionally
include or exclude files depending on whether the toolchain could build them.
// 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