⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cspslcdcclass.h

📁 Microsoft WinCE 6.0 BSP FINAL release source code for use with the i.MX27ADS TO2 WCE600_FINAL_MX27_S
💻 H
字号:
//------------------------------------------------------------------------------
//
//  Copyright (c) Microsoft Corporation.  All rights reserved.
//
//------------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Copyright (C) 2005-2006, Freescale Semiconductor, Inc. All Rights Reserved.
// THIS SOURCE CODE, AND ITS USE AND DISTRIBUTION, IS SUBJECT TO THE TERMS
// AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENT 
//---------------------------------------------------------------------------

//------------------------------------------------------------------------------
//
//  File:       CSPSlcdcClass.h
//  Purpose:    Macros and Function Prototypes for SLCD Controller
//
//------------------------------------------------------------------------------


#ifndef __CSP_SLCDC_CLASS_H__
#define __CSP_SLCDC_CLASS_H__

//------------------------------------------------------------------------------
// DEFINITIONS
//------------------------------------------------------------------------------

//------------------------------------------------------------------------------
// Surface class
//------------------------------------------------------------------------------
class SlcdcSurf : public GPESurf
{
    private:
    
    Node2D *node_2d;
        
    public:
    
    SlcdcSurf(int width, int height, int offset, void *pBits, int stride, EGPEFormat format, 
        Node2D *pNode);
    ~SlcdcSurf(void);
};

//------------------------------------------------------------------------------
// CSP SLCDC class
//------------------------------------------------------------------------------
class CSPSlcdcClass : public GPE
{
    protected:
    
    CSP_SLCDC_REGS *slcdc;                                      // SLCDC registers
    GPEMode mode;                                               // Graphics mode info
    Node2D* m_p2DVideoMemory;                                   // Base entry representing all video memory
    UINT16 *video_mem;                                          // Frambuffer pointer
    UINT32 stride;                                              // Number of words / line
    
    public:
    
    CSPSlcdcClass(void);    // Constructor
    ~CSPSlcdcClass(void);   // Destructor
    
    // The following methods implement the default function. 
    // the derived-class can override it.
    SCODE SetMode(int modeId, HPALETTE *pPalette);
    SCODE GetModeInfo(GPEMode *pMode, int modeNo);
    int NumModes(void);
    void PowerHandler(BOOL bOff);
    
    int InVBlank(void);
    SCODE SetPalette(const PALETTEENTRY *src, unsigned short firstEntry, 
        unsigned short numEntries);
    BOOL ContrastControl(ULONG cmd, ULONG *pValue);
    SCODE SetPointerShape(GPESurf *pMask, GPESurf *pColorSurf, int xHot, int yHot, 
        int cx, int cy);
    SCODE MovePointer(int x, int y );
    SCODE SetCursorColor(UINT8 red, UINT8 green, UINT8 blue);
    SCODE Line( GPELineParms *pLineParms, EGPEPhase phase = gpeSingle);
    SCODE BltPrepare (GPEBltParms *pBltParms);  
    SCODE BltComplete(GPEBltParms *pBltParms);
    SCODE AllocSurface(GPESurf **ppSurf, int width, int height, EGPEFormat format, int surfaceFlags);
    ULONG   DrvEscape( SURFOBJ *pso,
                                ULONG    iEsc,
                                ULONG    cjIn,
                                PVOID    pvIn,
                                ULONG    cjOut,
                                PVOID    pvOut);

};

#endif // __CSP_SLCDC_CLASS_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -