Guiliani  Version 2.5 revision 7293 (documentation build 13)
CGfxWrapDAVE Class Reference

D/AVE implementation of the graphics wrapper. More...

#include <GfxWrapDave.h>

Inheritance diagram for CGfxWrapDAVE:

Classes

struct  ScreenConfig_t
 config for screen More...
 

Public Member Functions

virtual void Arc (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2, const eC_Value &vStartAngle, const eC_Value &vEndAngle, const eC_Value &vRotationAngle, const eC_Bool &bFilled)
 
virtual void BlitImgExtImpl (const CGUIImageData &kImageData, const eC_Value &vAbsDestX, const eC_Value &vAbsDestY)
 
virtual void BlitImgExtImpl (const ImageResource_t &eID, const eC_UInt &uiSrcX, const eC_UInt &uiSrcY, const eC_UInt &uiSrcWidth, const eC_UInt &uiSrcHeight, const eC_Value &vDestX, const eC_Value &vDestY, const eC_Value &vDestWidth, const eC_Value &vDestHeight, const eC_UByte &ubAlpha=255, const eC_Value &vAngle=eC_FromFloat(0), const eC_Value &vRotCenterX=eC_FromFloat(0.5), const eC_Value &vRotCenterY=eC_FromFloat(0.5))
 
void CheckDAVEError ()
 Checks DAVE device for errors and outputs a log-message with error-code and description.
 
virtual void CreateScreen ()
 
virtual void DestroyScreen ()
 Method to clean and release the screen which was created via the CreateScreen Method. More...
 
virtual eC_Bool DrawToBitmap (GUIBitmapPlaneID_t uiBitmapID)
 
virtual eC_Bool DrawToScreen ()
 
virtual void Ellipse (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2, const eC_Bool &bFilled=true)
 
virtual void FilledRect (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2)
 
d2_device * GetDaveDevice ()
 
virtual eC_UInt GetImageSize (const ImageResource_t &eID) const
 
virtual eC_UInt GetImgHeightImpl (const ImageResource_t &eID) const
 
virtual eC_UInt GetImgWidthImpl (const ImageResource_t &eID) const
 
virtual eC_UInt GetPhysicalScreenHeight ()
 
virtual eC_UInt GetPhysicalScreenWidth ()
 
virtual eC_UInt GetVirtualScreenHeight ()
 
virtual eC_UInt GetVirtualScreenWidth ()
 
virtual void Line (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2)
 the following methods are protected to prevent calling them directly More...
 
virtual void LoadGlyphData (CGUIImageData *pkImageData, const eC_UInt &uiGlyphWidth, const eC_UInt &uiGlyphHeight, eC_UByte *pkGlyphBitmap)
 
virtual void Rect (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2)
 
virtual eC_Bool Refresh (const RefreshCall_t eRefreshCallType)
 
virtual void RefreshImage (const ImageResource_t &eID, void *pkMemory)
 
virtual void Ring (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2, const eC_Value &vRingWidth, const eC_Value &vStartAngle, const eC_Value &vEndAngle, const eC_Value &vRotationAngle, const eC_Bool &bFilled)
 
void SetAlpha (eC_UByte ubAlpha)
 
virtual void SetCliprect (const CGUIRect &NewClipRect)
 
virtual void SetForegroundColorImpl (const eC_UByte &ubRed, const eC_UByte &ubGreen, const eC_UByte &ubBlue, const eC_UByte &ubAlpha=255)
 
virtual eC_Value SetLineWidth (const eC_Value &vWidth)
 
virtual void SetTargetLayer (const eC_UInt &uiLayerID)
 
virtual eC_Bool SupportCompressedFonts () const
 
virtual void UnloadGlyphData (CGUIImageData *pkImageData)
 
- Public Member Functions inherited from CGfxWrap
void ForceRefresh ()
 
eC_Bool GetDoubleBufferingEnforcesFlipping ()
 
virtual eC_UInt GetNOFImages ()
 
virtual eC_UInt GetPhysicalScreenHeight ()=0
 
virtual eC_UInt GetPhysicalScreenWidth ()=0
 
CGUICommonEnums::ImageType_t GetScreenFormat () const
 
virtual eC_UInt GetScreenHorizontalPPI () const
 
virtual eC_UInt GetScreenVerticalPPI () const
 
virtual eC_UInt GetVirtualScreenHeight ()=0
 
virtual eC_UInt GetVirtualScreenWidth ()=0
 
virtual eC_UByte * GetWorkingMemory (const eC_UInt &uiSize)
 
eC_String GetWrapperName () const
 
virtual eC_Bool ImageExists (const ImageResource_t eID) const =0
 
virtual void ReleaseWorkingMemory (eC_UByte *pkMemory)
 
virtual void ResetWorkingMemory ()
 
virtual void RestoreWrapperState ()
 
void SetDoubleBufferingEnforcesFlipping (const eC_Bool bDoubleBufferingEnforcesFlipping)
 
virtual void SetFilteredBlit (const eC_Bool &bFilteredBlit)
 
void SetGfxEnv (CGfxEnv *pkGfxEnv)
 
virtual void SetOptimizedBlit (const eC_Bool &bOptimizedBlit)
 
void SetScreenFormat (const CGUICommonEnums::ImageType_t &uiScreenFormat)
 
virtual void SetScreenSize (const eC_UInt &uiWidth, const eC_UInt &uiHeight)
 
virtual void SetWindowCaption (const eC_String &kText)
 
virtual void StoreWrapperState ()
 
virtual void SyncWorkingMemory ()
 
void SetForegroundColor (const eC_UByte &ubRed, const eC_UByte &ubGreen, const eC_UByte &ubBlue, const eC_UByte &ubAlpha=255)
 
void SetForegroundColor (const eC_UInt &uiCol)
 
void UpdateGlobalAlpha (const eC_UByte &ubAlpha)
 
void SetGlobalAlpha (const eC_UByte &ubAlpha)
 
eC_UInt GetForegroundColor () const
 
eC_UByte GetGlobalAlpha () const
 
eC_UByte ApplyGlobalAlpha (const eC_UByte ubAlpha) const
 
void Line (const CGUIRect &kAbsRect)
 
void Rect (const CGUIRect &kAbsRect)
 
void FilledRect (const CGUIRect &kAbsRect)
 
void Ellipse (const CGUIRect &kAbsRect, const eC_Bool &bFilled)
 
void Arc (const CGUIRect &kAbsRect, const eC_Value &vStartAngle, const eC_Value &vEndAngle, const eC_Value &vRotationAngle, const eC_Bool &bFilled)
 
void Ring (const CGUIRect &kAbsRect, const eC_Value &vRingWidth, const eC_Value &vStartAngle, const eC_Value &vEndAngle, const eC_Value &vRotationAngle, const eC_Bool &bFilled)
 
void Text (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_String *const lpString)
 
virtual void RedrawGUI ()
 
virtual void ResetCliprect ()
 Resets the clipping rectangle.
 
virtual void GetCliprect (CGUIRect &AbsClipRect) const
 
void InvalidateRect (const CGUIRect &kInvalidRect)
 
void InvalidateRect (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_Value &vAbsX2, const eC_Value &vAbsY2)
 
const CGUIRectGetInvalidatedRect () const
 
virtual void ClearInvalidRect ()
 
void BlitImg (const ImageResource_t &eID, const eC_Value &vAbsDestX, const eC_Value &vAbsDestY)
 
void BlitImg (const CGUIImageData &kImageData, const eC_Value &vAbsDestX, const eC_Value &vAbsDestY)
 
void BlitImgExt (const ImageResource_t &eID, const eC_Value &vAbsDestX, const eC_Value &vAbsDestY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_Bool &bStretch=true, const eC_UByte &ubAlpha=255)
 
virtual void BlitImgNinePatch (const ImageResource_t &eID, const CGUIRect &kAbsRect, const eC_UInt uiTopBorder, const eC_UInt uiBottomBorder, const eC_UInt uiLeftBorder, const eC_UInt uiRightBorder, const eC_UByte &ubAlpha=255)
 
void BlitImgNinePatch (const ImageResource_t &eID, const CGUIRect &kAbsRect, const CGUINinePatch &kNinePatch, const eC_UByte &ubAlpha=255)
 
void BlitImgExt (const ImageResource_t &eID, const CGUIRect &kAbsRect, const eC_Bool &bStretch=true, const eC_UByte &ubAlpha=255)
 
void BlitImgExt (const ImageResource_t &eID, const CGUIRect &kSrcAbsRect, const CGUIRect &kDstAbsRect, const eC_UByte &ubAlpha=255)
 
void BlitImgExt (const ImageResource_t &eID, const eC_UInt &uiAbsSrcX, const eC_UInt &uiAbsSrcY, const eC_UInt &uiSrcWidth, const eC_UInt &uiSrcHeight, const eC_Value &vAbsDestX, const eC_Value &vAbsDestY, const eC_Value &vDestWidth, const eC_Value &vDestHeight, const eC_UByte &ubAlpha=255, const eC_Value &vAngle=eC_FromFloat(0), const eC_Value &vRotCenterX=eC_FromFloat(0.5), const eC_Value &vRotCenterY=eC_FromFloat(0.5))
 
eC_UInt GetImgWidth (const ImageResource_t &eID) const
 
eC_UInt GetImgHeight (const ImageResource_t &eID) const
 
CGUIRect GetImgOriginRect (const ImageResource_t &eID) const
 
void SetFont (const FontResource_t &eID)
 
void SetFontSpacing (const eC_Float &fSpacing)
 
void RequiredSpace (const eC_String *const pkText, eC_Value &vWidth, eC_Value &vHeight)
 
void FittingNumChars (const eC_String *const pkText, eC_Value vWidthMax, eC_UInt &uiNumChars, const eC_Bool &bStartAtEnd=false)
 
eC_Int GetAscender () const
 
eC_Int GetDescender () const
 
eC_Int GetInternalLeading () const
 
void GetGlyphMetrics (const eC_Char cChar, CFntWrap::GlyphMetrics_t &kMetrics)
 
eC_Value GetTextXPosAdjustment (const CGUIText::HorAligned_t eHorAlignment)
 
eC_Value GetTextYPosAdjustment (const CGUIText::VerAligned_t eVerAlignment)
 
eC_Bool SetNOFFonts (const eC_UInt uiNOFFonts)
 
eC_UInt GetNOFFonts ()
 
void ChangeFont (const FontResource_t &eFontID, const eC_Char *const pcPath, const eC_UInt &uiFontSize, const CFntWrap::GUIFont_t &eFontStyle)
 
void LoadFont (const FontResource_t &eFontID)
 
void UnloadFont (const FontResource_t &eFontID)
 
virtual eC_TArray< eC_UByte > * GetBitmapPlaneData (const GUIBitmapPlaneID_t &eBitmapPlaneID)
 
virtual void SetRenderingOffset (const eC_Value &vOffsetX, const eC_Value &vOffsetY)
 
void GetRenderingOffset (eC_Value &vOffsetX, eC_Value &vOffsetY)
 
virtual GUIBitmapPlaneID_t CreateBitmapPlane (const CGUIObject &rkParentObject, const eC_Value &vWidth, const eC_Value &vHeight)
 
void DeleteBitmapPlane (const GUIBitmapPlaneID_t uiBitmapID)
 
void DeleteBitmapPlanes (const CGUIObject *pkObject)
 
CGUIBitmapPlaneGetBitmapPlane (const GUIBitmapPlaneID_t uiBitmapID)
 
GUIBitmapPlaneID_t GetUsedBitmapPlaneID () const
 

Static Public Member Functions

static eC_Bool CreateInstance (CGfxEnv *pkGfxEnv, const eC_UInt &uiWorkingMemorySize=64000)
 
static eC_UInt GetD1PixelFormat (const CGUICommonEnums::ImageType_t &ePixFormat)
 
static eC_UInt GetD2PixelFormat (const CGUICommonEnums::ImageType_t &ePixFormat)
 
- Static Public Member Functions inherited from CGfxWrap
static void DeleteInstance ()
 Delete the graphics wrapper instance.
 
static eC_UInt GetNextPowerOf2 (const eC_Value &vValue)
 

Protected Member Functions

 CGfxWrapDAVE (CGfxEnv *pkGfxEnv, const eC_UInt &uiWorkingMemorySize)
 
virtual ~CGfxWrapDAVE (void)
 Destructor.
 
virtual CGUIBitmapPlaneCreateGfxDependentBitmap (GUIBitmapPlaneID_t uiNewBitmapID, const CGUIObject &rkParentObject, const eC_Value &vWidth, const eC_Value &vHeight)
 
eC_Bool DeInit (void)
 
void EndRenderBuffer ()
 
virtual eC_Bool ImageExists (const ImageResource_t eID) const
 
eC_Bool Init (void)
 
void InitScreens ()
 
virtual eC_Bool LoadImgDecoder (const eC_String &kPath, const eC_UInt &uiImageIndex)
 
virtual void LoadImgImpl (const eC_String &kPath, const ImageResource_t &eID)
 
virtual void LoadImgImpl (void *pkMemory, const eC_UInt &uiWidth, const eC_UInt &uiHeight, const eC_UInt &eImageType, const ImageResource_t &eID)
 
virtual eC_Bool LoadImgRAW (eC_File *pkImageFile, CGUIImageDataDAVE &kImageData)
 
virtual eC_Bool LoadImgRLE (eC_File *pkImageFile, CGUIImageDataDAVE &kImageData)
 
eC_Bool SetNOFImagesImpl (const eC_UInt uiNOFImages)
 
void StartRenderBuffer ()
 
virtual void UnloadImg (const ImageResource_t &eID)
 
- Protected Member Functions inherited from CGfxWrap
 CGfxWrap ()
 Constructor.
 
virtual ~CGfxWrap (void)
 Destructor.
 
virtual void Arc (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2, const eC_Value &vStartAngle, const eC_Value &vEndAngle, const eC_Value &vRotationAngle, const eC_Bool &bFilled)=0
 
void DeInit ()
 Deinitialization.
 
virtual void Ellipse (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_Value &vAbsX2, const eC_Value &vAbsY2, const eC_Bool &bFilled)=0
 
virtual void FilledRect (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_Value &vAbsX2, const eC_Value &vAbsY2)=0
 
virtual void Line (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_Value &vAbsX2, const eC_Value &vAbsY2)=0
 the following methods are protected to prevent calling them directly More...
 
virtual void Rect (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_Value &vAbsX2, const eC_Value &vAbsY2)=0
 
virtual void Ring (const eC_Value &vX1, const eC_Value &vY1, const eC_Value &vX2, const eC_Value &vY2, const eC_Value &vRingWidth, const eC_Value &vStartAngle, const eC_Value &vEndAngle, const eC_Value &vRotationAngle, const eC_Bool &bFilled)=0
 
virtual void SetForegroundColorImpl (const eC_UByte &ubRed, const eC_UByte &ubGreen, const eC_UByte &ubBlue, const eC_UByte &ubAlpha=255)=0
 
virtual void StartHandleDraw (const CGUIRect &crkClipRect)
 
virtual void StartRedrawGUI ()
 
virtual void EndRedrawGUI ()
 Callback which is called at the end of RedrawGUI() after all Invalidated areas were drawn and refreshed.
 
eC_Bool SetNOFImages (const eC_UInt uiNOFImages)
 
void LoadImg (const eC_String &kPath, const ImageResource_t &eID)
 
void LoadImg (void *pkMemory, const eC_UInt &uiWidth, const eC_UInt &uiHeight, const eC_UInt &eImageType, const ImageResource_t &eID)
 
void SetInvalidatedRect (const eC_Value &vAbsX1, const eC_Value &vAbsY1, const eC_Value &vAbsX2, const eC_Value &vAbsY2)
 
void SetInvalidatedRect (const CGUIRect &NewAbsRect)
 
void ResetInvalidatedRect ()
 Resets the invalidated rectangle.
 
CGUIBitmapPlaneGetDummyBitmap ()
 
virtual eC_Bool FinishDrawToBitmap ()
 

Protected Attributes

eC_Bool m_bFrameStarted
 if frame has started
 
eC_Bool m_bSeperatedMemory
 true if memory is seperated (e.g. Linux)
 
dc_handle m_dc_handle
 A handle for the display controller.
 
eC_Int m_iD1Mode
 Dave L1 Mode.
 
eC_Int m_iD2Mode
 Dave L2 Mode.
 
d1_device * m_pkD1Handle
 A handle for the display controller.
 
d2_context * m_pkD2Context
 a dave context
 
d2_device * m_pkD2Handle
 a device for DAVE
 
eC_TArray< CGUIImageDataDAVE * > m_pkImages
 the array of the loaded images
 
d2_renderbuffer * m_pkRenderBuffer
 a single renderbuffer for immediate mode
 
ScreenConfig_tm_pkScreens
 Pointer to memory areas of configured framebuffers.
 
eC_UInt m_uiNumberOfScreens
 number of screen
 
- Protected Attributes inherited from CGfxWrap
eC_Bool m_bDoubleBufferingEnforcesFlipping
 
eC_Bool m_bFilteredBlit
 if filtered blit is active
 
eC_Bool m_bInvalidationInLastFrame
 
eC_Bool m_bOptimizedBlit
 if optimized blit is active
 
CGUIRect m_kClippingRect
 
eC_Semaphore m_kGfxWrapSemaphore
 Semaphore to lock access to methods used in a multi thread context.
 
CGUIRect m_kInvalidatedRect
 
eC_TListDoubleLinked< CGUIRectm_kInvalidatedRectList
 This is the list of invalidated rectangular regions within the GUI.
 
eC_TListDoubleLinked< CGUIRectm_kLastFrameInvalidatedRectList
 This is the list of regions which have been invalidated during the LAST frame.
 
eC_String m_kWrapperName
 name of the wrapper
 
CGfxEnvm_pkGfxEnv
 pointer to the graphics-environment
 
eC_UByte m_ubAlpha
 Currently set global alpha value.
 
eC_UInt m_uiColor
 Currently set foreground color.
 
eC_UInt m_uiNOFImages
 total number of image-objects
 
eC_UInt m_uiScreenHeight
 Screen height.
 
eC_UInt m_uiScreenWidth
 Screen width.
 
eC_Value m_vGlobalAlphaFactor
 
eC_Value m_vLineWidth
 Line width in pixels.
 
eC_Value m_vRenderingOffsetX
 offset in x-direction
 
eC_Value m_vRenderingOffsetY
 offset in y-direction
 

Additional Inherited Members

- Public Types inherited from CGfxWrap
enum  RefreshCall_t {
  SINGLE_REFRESH , FIRST_REFRESH_OF_FRAME , INTERMEDIATE_REFRESH , LAST_REFRESH_OF_FRAME ,
  FORCED_REFRESH
}
 
- Static Protected Attributes inherited from CGfxWrap
static const eC_Value cvTwoPi
 constant for 2 PI
 

Detailed Description

D/AVE implementation of the graphics wrapper.

This is the D/AVE implementation of the graphics wrapper. For details see description of its base class CGfxWrap and the D/AVE documentation.

Since data needs to be available for the D/AVE-driver until the current frame is finished, the wrapper supports working memory which will be allocated at the beginning and re-used during runtime. The size of the working buffer can be specified when creating the wrapper.

See CGfxWrapDAVE Platform Specific Limitations

Constructor & Destructor Documentation

◆ CGfxWrapDAVE()

CGfxWrapDAVE::CGfxWrapDAVE ( CGfxEnv pkGfxEnv,
const eC_UInt &  uiWorkingMemorySize 
)
protected

Constructor. Please refer to the DAVE API documentation for details regarding dave-display modes.

Parameters
pkGfxEnv
uiWorkingMemorySize

Member Function Documentation

◆ Arc()

virtual void CGfxWrapDAVE::Arc ( const eC_Value &  vX1,
const eC_Value &  vY1,
const eC_Value &  vX2,
const eC_Value &  vY2,
const eC_Value &  vStartAngle,
const eC_Value &  vEndAngle,
const eC_Value &  vRotationAngle,
const eC_Bool &  bFilled 
)
virtual

Draws an arc which is completly inside the rectangle described through the rectangle the top left edge at (vAbsX1, vAbsY1) and bottom right edge at (vAbsX2, vAbsY2). The arc will be filled out if the last parameter is true 0-degrees is at the mathematically correct position on the unit-circle angles are increasing in counter-clockwise direction. rotation-angle is increasing in clockwise direction, i.e. rotating by 90 degrees will result in the 0-degress being at the bottom-center

Parameters
vX1X-coordinate of bounding rectangle's top left corner
vY1Y-Coordinate of bounding rectangle's top left corner
vX2X-coordinate of bounding rectangle's bottom right corner
vY2Y-Coordinate of bounding rectangle's bottom right corner
vStartAnglestart-angle
vEndAngleend-angle
vRotationAnglerotation-angle
bFilledSpecifies whether the arc will be drawn outlined (false) or filled (true)

Implements CGfxWrap.

◆ BlitImgExtImpl() [1/2]

virtual void CGfxWrapDAVE::BlitImgExtImpl ( const CGUIImageData kImageData,
const eC_Value &  vAbsDestX,
const eC_Value &  vAbsDestY 
)
virtual

Blits an image. This MUST be implemented by all graphics wrappers. It is ensured that the supplied image ID is in the valid range and is not DUMMY_IMAGE. For detailed explanations, please refer to CGfxWrap::BlitImgExt

Parameters
kImageDataImageData
vAbsDestXDestination X position in absolute coordinates
vAbsDestYDestination Y position in absolute coordinates

Implements CGfxWrap.

◆ BlitImgExtImpl() [2/2]

virtual void CGfxWrapDAVE::BlitImgExtImpl ( const ImageResource_t eID,
const eC_UInt &  uiSrcX,
const eC_UInt &  uiSrcY,
const eC_UInt &  uiSrcWidth,
const eC_UInt &  uiSrcHeight,
const eC_Value &  vDestX,
const eC_Value &  vDestY,
const eC_Value &  vDestWidth,
const eC_Value &  vDestHeight,
const eC_UByte &  ubAlpha = 255,
const eC_Value &  vAngle = eC_FromFloat(0),
const eC_Value &  vRotCenterX = eC_FromFloat(0.5),
const eC_Value &  vRotCenterY = eC_FromFloat(0.5) 
)
virtual

Implementation of image blitting. For detailed explanations, please refer to CGfxWrap::BlitImgExtImpl PLEASE NOTE that rotated blits are not supported for DAVE!

Parameters
eIDIdentifier of the image to be blitted.
uiSrcXX coordinate of upper left corner of the relevant area within the source image
uiSrcYY coordinate of upper left corner of the relevant area within the source image
uiSrcWidthWidth of the of the relevant area within the source image
uiSrcHeightHeight of the of the relevant area within the source image
vDestXDestination X position in absolute coordinates
vDestYDestination Y position in absolute coordinates
vDestWidthDestination width
vDestHeightDestination height
ubAlphaDegree of transparency. 0=transparent 255=opaque Default is opaque.
vAngleAngle in degrees by which the image will be rotated
vRotCenterXRotation center X. In range of 0 to 1 (like U/V coordinates)
vRotCenterYRotation center Y. In range of 0 to 1 (like U/V coordinates)

Implements CGfxWrap.

◆ CreateGfxDependentBitmap()

virtual CGUIBitmapPlane * CGfxWrapDAVE::CreateGfxDependentBitmap ( GUIBitmapPlaneID_t  uiNewBitmapID,
const CGUIObject rkParentObject,
const eC_Value &  vWidth,
const eC_Value &  vHeight 
)
protectedvirtual

Method which will be called by CreateBitmap to instantiate a new Bitmap-Object. This Method needs to be implemented by every derived GfxWrapper. If a GfxWrapper does not support Bitmap-Handling, he may create an CGUIBaseBitmap

See also
Bitmap planes
Parameters
uiNewBitmapIDID of the new BitmapPlane
rkParentObjectreference to the GUIObject which will be the parent of the bitmap
vWidthwidth of the new bitmap
vHeightheight of the new bitmap
Returns
pointer to the new created BitmapObject

Reimplemented from CGfxWrap.

◆ CreateInstance()

static eC_Bool CGfxWrapDAVE::CreateInstance ( CGfxEnv pkGfxEnv,
const eC_UInt &  uiWorkingMemorySize = 64000 
)
static

Create instance

Parameters
pkGfxEnvGfxEnv
uiWorkingMemorySizesize of working memory (default: 64kB)
Returns
true if successful

◆ CreateScreen()

virtual void CGfxWrapDAVE::CreateScreen ( )
virtual

Create a screen according to data from dc-wrap

Reimplemented in CGfxWrapDAVECyclone5.

◆ DeInit()

eC_Bool CGfxWrapDAVE::DeInit ( void  )
protected

De-init the graphics wrapper

Returns
true on success

◆ DestroyScreen()

virtual void CGfxWrapDAVE::DestroyScreen ( )
virtual

Method to clean and release the screen which was created via the CreateScreen Method.

Reimplemented from CGfxWrap.

◆ DrawToBitmap()

virtual eC_Bool CGfxWrapDAVE::DrawToBitmap ( GUIBitmapPlaneID_t  uiBitmapID)
virtual

Changes the RenderTarget to the BitmapPlane with the given ID. All successive GfxWrap draw commands will be done in the bitmap of this plane instead of within the framebuffer

Parameters
uiBitmapIDID of the BitmapPlane in which will be drawn.
Returns
True if the BitmapPlane with given ID exists, otherwise False

Reimplemented from CGfxWrap.

◆ DrawToScreen()

virtual eC_Bool CGfxWrapDAVE::DrawToScreen ( )
virtual

Activates the Screen as active RenderTarget again

Returns
True if the changing was successful, otherwise False

Reimplemented from CGfxWrap.

◆ Ellipse()

virtual void CGfxWrapDAVE::Ellipse ( const eC_Value &  vAbsX1,
const eC_Value &  vAbsY1,
const eC_Value &  vAbsX2,
const eC_Value &  vAbsY2,
const eC_Bool &  bFilled = true 
)
virtual

Draws an ellipse which is completly inside the rectangle described through the rectangle the top left edge at (vAbsX1, vAbsY1) and bottom right edge at (vAbsX2, vAbsY2). The ellipse will be filled out if the last parameter is true

Parameters
vAbsX1X-coordinate of bounding rectangle's top left corner
vAbsY1Y-Coordinate of bounding rectangle's top left corner
vAbsX2X-coordinate of bounding rectangle's bottom right corner
vAbsY2Y-Coordinate of bounding rectangle's bottom right corner
bFilledSpecifies whether the ellipse will be drawn outlined (false) or filled (true)

Implements CGfxWrap.

◆ EndRenderBuffer()

void CGfxWrapDAVE::EndRenderBuffer ( )
protected

end the current render-buffer

◆ FilledRect()

virtual void CGfxWrapDAVE::FilledRect ( const eC_Value &  vAbsX1,
const eC_Value &  vAbsY1,
const eC_Value &  vAbsX2,
const eC_Value &  vAbsY2 
)
virtual

Draws a filled rectangle with the top left edge at (vAbsX1, vAbsY1) and bottom right edge at (vAbsX2, vAbsY2) The bottom edge and the right edge is not included in the drawn rect. e.g. FilledRect(0, 0, 10, 10); the rect is drawn from (0,0) to (9,9) (both included).

See also
CGUIObject::GetAbsRect()
Parameters
vAbsX1X-coordinate of top left corner
vAbsY1Y-Coordinate of top left corner
vAbsX2X-coordinate of bottom right corner
vAbsY2Y-Coordinate of bottom right corner

Implements CGfxWrap.

◆ GetD1PixelFormat()

static eC_UInt CGfxWrapDAVE::GetD1PixelFormat ( const CGUICommonEnums::ImageType_t ePixFormat)
static

Get D1-pixelformat

Parameters
ePixFormatpixel-format
Returns
D1-pixelformat

◆ GetD2PixelFormat()

static eC_UInt CGfxWrapDAVE::GetD2PixelFormat ( const CGUICommonEnums::ImageType_t ePixFormat)
static

Get D2-pixelformat

Parameters
ePixFormatpixel-format
Returns
D2-pixelformat

◆ GetDaveDevice()

d2_device * CGfxWrapDAVE::GetDaveDevice ( )

WARNING!!!! when using RA6 inline functions return trash and can't be used Returns a pointer to the internal dave device handle.

Returns
The dave device handle.

◆ GetImageSize()

virtual eC_UInt CGfxWrapDAVE::GetImageSize ( const ImageResource_t eID) const
inlinevirtual

Computes the size of a loaded image's raw pixel data (e.g. RGBA or RGB565, depending on platform) in memory. Needed for the Image Cache. Since this will be called by the Guiliani Image cache, derived wrappers _must not_ call NotifyImageAccess() from within this method.

Parameters
eIDThe image's ID.
Returns
the size of the image in bytes

Implements CGfxWrap.

◆ GetImgHeightImpl()

virtual eC_UInt CGfxWrapDAVE::GetImgHeightImpl ( const ImageResource_t eID) const
virtual

Returns the height of an image. Must be implemented by each graphics wrapper.

Parameters
eIDThe ID of the image whose width should be returned. It is ensured that eID is always in the valid range and not DUMMY_IMAGE.
Returns
The width of the image in pixels.

Implements CGfxWrap.

◆ GetImgWidthImpl()

virtual eC_UInt CGfxWrapDAVE::GetImgWidthImpl ( const ImageResource_t eID) const
virtual

Returns the width of an image. Must be implemented by each graphics wrapper.

Parameters
eIDThe ID of the image whose width should be returned. It is ensured that eID is always in the valid range and not DUMMY_IMAGE.
Returns
The width of the image in pixels.

Implements CGfxWrap.

◆ GetPhysicalScreenHeight()

virtual eC_UInt CGfxWrapDAVE::GetPhysicalScreenHeight ( )
virtual

Returns the screen height. Will always return the physical screen height with which the GfxWrap was originally initialized. Regardless of whether the virtual screen size has been modified e.g. while drawing into a CGUIBitmapPlane.

Returns
Physical screen height

Implements CGfxWrap.

◆ GetPhysicalScreenWidth()

virtual eC_UInt CGfxWrapDAVE::GetPhysicalScreenWidth ( )
virtual

Returns the screen width. Will always return the physical screen width with which the GfxWrap was originally initialized. Regardless of whether the virtual screen size has been modified e.g. while drawing into a CGUIBitmapPlane.

Returns
Physical screen width

Implements CGfxWrap.

◆ GetVirtualScreenHeight()

virtual eC_UInt CGfxWrapDAVE::GetVirtualScreenHeight ( )
virtual

Returns the screen height in pixels, may vary if DrawToBitmap is active. It will then return the active BitmapPlane's height instead.

See also
GetPhysicalScreenHeight()
Returns
eC_UInt The screen height

Implements CGfxWrap.

◆ GetVirtualScreenWidth()

virtual eC_UInt CGfxWrapDAVE::GetVirtualScreenWidth ( )
virtual

Returns the screen width in pixels, may vary if DrawToBitmap is active. It will then return the active BitmapPlane's width instead.

See also
GetPhysicalScreenWidth()
Returns
eC_UInt The screen width

Implements CGfxWrap.

◆ ImageExists()

virtual eC_Bool CGfxWrapDAVE::ImageExists ( const ImageResource_t  eID) const
protectedvirtual

Returns whether the image with the given ID currently is loaded within the Graphics Wrapper. This interface must be implemented by derived graphics wrappers.

Parameters
eIDThe ID to check
Returns
True if the image with the given ID is currently loaded, False otherwise.

Implements CGfxWrap.

◆ Init()

eC_Bool CGfxWrapDAVE::Init ( void  )
protected

Init the graphics wrapper

Returns
true on success

◆ InitScreens()

void CGfxWrapDAVE::InitScreens ( )
protected

Initialize screens.

◆ Line()

virtual void CGfxWrapDAVE::Line ( const eC_Value &  vAbsX1,
const eC_Value &  vAbsY1,
const eC_Value &  vAbsX2,
const eC_Value &  vAbsY2 
)
virtual

the following methods are protected to prevent calling them directly

Draws a line from (vAbsX1, vAbsY1) to (vAbsX2, vAbsY2)

Parameters
vAbsX1X-coordinate of starting point
vAbsY1Y-Coordinate of starting point
vAbsX2X-coordinate of ending point
vAbsY2Y-Coordinate of ending point

Implements CGfxWrap.

◆ LoadGlyphData()

virtual void CGfxWrapDAVE::LoadGlyphData ( CGUIImageData pkImageData,
const eC_UInt &  uiGlyphWidth,
const eC_UInt &  uiGlyphHeight,
eC_UByte *  pkGlyphBitmap 
)
virtual

load data for glyph

Parameters
pkImageDataimage-data to modify
uiGlyphWidthwidth of glyph
uiGlyphHeightheight of glyph
pkGlyphBitmapbitmap of glyph

Reimplemented from CGfxWrap.

◆ LoadImgDecoder()

virtual eC_Bool CGfxWrapDAVE::LoadImgDecoder ( const eC_String &  kPath,
const eC_UInt &  uiImageIndex 
)
protectedvirtual

Load image using decoder if present

Parameters
kPathfile to load
uiImageIndexindex for image
Returns
true on success

◆ LoadImgImpl() [1/2]

virtual void CGfxWrapDAVE::LoadImgImpl ( const eC_String &  kPath,
const ImageResource_t eID 
)
protectedvirtual

Loads an image. This loads an image from the given path and associates it with an Image-Identifier.

Parameters
kPathComplete path and filename of the image to be loaded.
eIDID by which the image will later be accessible.

Implements CGfxWrap.

◆ LoadImgImpl() [2/2]

virtual void CGfxWrapDAVE::LoadImgImpl ( void *  pkMemory,
const eC_UInt &  uiWidth,
const eC_UInt &  uiHeight,
const eC_UInt &  eImageType,
const ImageResource_t eID 
)
protectedvirtual

Loads a memory-image. This loads an image from a pointer and associates it with an Image-Identifier.

Parameters
pkMemorypointer to image-data.
uiWidth
uiHeight
eImageType
eIDID by which the image will later be accessible.

Implements CGfxWrap.

◆ LoadImgRAW()

virtual eC_Bool CGfxWrapDAVE::LoadImgRAW ( eC_File *  pkImageFile,
CGUIImageDataDAVE kImageData 
)
protectedvirtual

Load image in RAW-format

Parameters
pkImageFilefile to load
kImageDatafilled imagedata
Returns
true on success

◆ LoadImgRLE()

virtual eC_Bool CGfxWrapDAVE::LoadImgRLE ( eC_File *  pkImageFile,
CGUIImageDataDAVE kImageData 
)
protectedvirtual

Load image in RLE-format

Parameters
pkImageFilefile to load
kImageDatafilled imagedata
Returns
true on success

◆ Rect()

virtual void CGfxWrapDAVE::Rect ( const eC_Value &  vAbsX1,
const eC_Value &  vAbsY1,
const eC_Value &  vAbsX2,
const eC_Value &  vAbsY2 
)
virtual

Draws a rectangle with the top left edge at (vAbsX1, vAbsY1) and bottom right edge at (vAbsX2, vAbsY2). The bottom edge and the right edge is not included in the drawn rect. e.g. Rect(0, 0, 10, 10); the rect is drawn from (0,0) to (9,9) (both included).

See also
CGUIObject::GetAbsRect()
Parameters
vAbsX1X-coordinate of top left corner
vAbsY1Y-Coordinate of top left corner
vAbsX2X-coordinate of bottom right corner
vAbsY2Y-Coordinate of bottom right corner

Implements CGfxWrap.

◆ Refresh()

virtual eC_Bool CGfxWrapDAVE::Refresh ( const RefreshCall_t  eRefreshCallType)
virtual

Method to bring the screen content onto the physical screen so that it becomes visible, usually via a blit operation.

Parameters
eRefreshCallTypeThe call type of this refresh
Returns
True of the refresh was performed, False otherwise

Implements CGfxWrap.

Reimplemented in CGfxWrapDAVECyclone5.

◆ RefreshImage()

virtual void CGfxWrapDAVE::RefreshImage ( const ImageResource_t eID,
void *  pkMemory 
)
virtual

Refresh a memory-image

Parameters
eIDID of image to refresh
pkMemorymemory-location

Reimplemented from CGfxWrap.

◆ Ring()

virtual void CGfxWrapDAVE::Ring ( const eC_Value &  vX1,
const eC_Value &  vY1,
const eC_Value &  vX2,
const eC_Value &  vY2,
const eC_Value &  vRingWidth,
const eC_Value &  vStartAngle,
const eC_Value &  vEndAngle,
const eC_Value &  vRotationAngle,
const eC_Bool &  bFilled 
)
virtual

Draws a ring which is completly inside the rectangle described through the rectangle the top left edge at (vAbsX1, vAbsY1) and bottom right edge at (vAbsX2, vAbsY2). The ring will be filled out if the last parameter is true 0-degrees is at the mathematically correct position on the unit-circle angles are increasing in counter-clockwise direction. rotation-angle is increasing in clockwise direction, i.e. rotating by 90 degrees will result in the 0-degress being at the bottom-center

Parameters
vX1X-coordinate of bounding rectangle's top left corner
vY1Y-Coordinate of bounding rectangle's top left corner
vX2X-coordinate of bounding rectangle's bottom right corner
vY2Y-Coordinate of bounding rectangle's bottom right corner
vRingWidthwidth of the ring
vStartAnglestart-angle
vEndAngleend-angle
vRotationAnglerotation-angle
bFilledSpecifies whether the ring will be drawn outlined (false) or filled (true)

Implements CGfxWrap.

◆ SetAlpha()

void CGfxWrapDAVE::SetAlpha ( eC_UByte  ubAlpha)

Set new alpha-value

Parameters
ubAlphaThe new alpha value

◆ SetCliprect()

virtual void CGfxWrapDAVE::SetCliprect ( const CGUIRect NewAbsClipRect)
virtual

Sets a clipping rectangle. All drawing operations will be limited to the region within the clipping rectangle. This is very useful for advanced features such as soft-scrolling. Note that the clipping rectangle is not allowed to exceed the invalidated rectangle, since this would lead to visual artifacts.

Parameters
NewAbsClipRectA normalised rectangle that includes all pixels that could be drawn by the functions of the graphics wrapper. The rectangle includes the border. All pixels outside will be left untouched.

Implements CGfxWrap.

◆ SetForegroundColorImpl()

virtual void CGfxWrapDAVE::SetForegroundColorImpl ( const eC_UByte &  ubRed,
const eC_UByte &  ubGreen,
const eC_UByte &  ubBlue,
const eC_UByte &  ubAlpha = 255 
)
virtual

Sets the foreground color. This MUST be implemented by all graphics wrappers. For detailed explanations, please refer to CGfxWrap::SetForegroundColor

Parameters
ubRedRed intensity within a range of 0 - 255
ubGreenGreen intensity within a range of 0 - 255
ubBlueBlue intensity within a range of 0 - 255
ubAlphaAlpha intensity within a range of 0 (transparent) - 255 (opaque)

Implements CGfxWrap.

◆ SetLineWidth()

virtual eC_Value CGfxWrapDAVE::SetLineWidth ( const eC_Value &  vWidth)
virtual

Sets the line width in pixels

Parameters
vWidthwidth of lines
Returns
The previous line width.

Reimplemented from CGfxWrap.

◆ SetNOFImagesImpl()

eC_Bool CGfxWrapDAVE::SetNOFImagesImpl ( const eC_UInt  uiNOFImages)
protectedvirtual

Increases the size of the array of image resources

Parameters
uiNOFImagesnumber of images
Returns
true on success

Reimplemented from CGfxWrap.

◆ SetTargetLayer()

virtual void CGfxWrapDAVE::SetTargetLayer ( const eC_UInt &  uiLayerID)
virtual

Set target-layer for rendering

Parameters
uiLayerID

Reimplemented from CGfxWrap.

◆ StartRenderBuffer()

void CGfxWrapDAVE::StartRenderBuffer ( )
protected

Start a new render-buffer

◆ SupportCompressedFonts()

virtual eC_Bool CGfxWrapDAVE::SupportCompressedFonts ( ) const
inlinevirtual

Return if gfxwrap supports compressed fonts other than Alpha8

Returns
true if supported

Reimplemented from CGfxWrap.

◆ UnloadGlyphData()

virtual void CGfxWrapDAVE::UnloadGlyphData ( CGUIImageData pkImageData)
virtual

Unload data for glyph

Parameters
pkImageDataimage-data to unload

Reimplemented from CGfxWrap.

◆ UnloadImg()

virtual void CGfxWrapDAVE::UnloadImg ( const ImageResource_t eID)
protectedvirtual

Unloads an image. Unloads the image associated with the supplied Image-identifier and frees the memory formerly occupied by this image.

Parameters
eIDIdentifier of the image to be unloaded.

Reimplemented from CGfxWrap.


The documentation for this class was generated from the following file: