fmd.hxx

来自「windows mobile 5 下的底层驱动包」· HXX 代码 · 共 43 行

HXX
43
字号
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this source code is subject to the terms of the Microsoft end-user
// license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
// If you did not accept the terms of the EULA, you are not authorized to use
// this source code. For a copy of the EULA, please see the LICENSE.RTF on your
// install media.
//

#ifndef __FMD_HXX_
#define __FMD_HXX_

#include <fmd.h>
#include <new.h>

#define VALID_FMD_HANDLE    ((PVOID)1)

class CFmd {
public:
    CFmd() {}
    virtual ~CFmd() {}

    virtual PVOID Init(LPCTSTR lpActiveReg, PPCI_REG_INFO pRegIn, PPCI_REG_INFO pRegOut) = 0;
    virtual BOOL  Deinit(PVOID pv) = 0;
    virtual BOOL  GetInfo(PFlashInfo pFlashInfo) = 0;
    virtual BOOL  GetInfoEx(PFlashInfoEx pFlashInfo, PDWORD pdwNumRegions) = 0;
    virtual VOID  GetPhysSectorAddr (DWORD dwSector, PSECTOR_ADDR pStartSectorAddr) = 0;
    virtual DWORD GetBlockStatus(BLOCK_ID blockID) = 0;
    virtual DWORD SetBlockStatus(BLOCK_ID blockID, DWORD dwStatus) = 0;
    virtual BOOL  EraseBlock(BLOCK_ID blockID) = 0;
    virtual BOOL  ReadSector(SECTOR_ADDR startSectorAddr, LPBYTE pSectorBuff, PSectorInfo pSectorInfoBuff, DWORD dwNumSectors) = 0;
    virtual BOOL  WriteSector(SECTOR_ADDR startSectorAddr, LPBYTE pSectorBuff, PSectorInfo pSectorInfoBuff, DWORD dwNumSectors) = 0;
    virtual BOOL  OEMIoControl(DWORD dwIoControlCode, PBYTE pInBuf, DWORD nInBufSize, PBYTE pOutBuf, DWORD nOutBufSize, PDWORD pBytesReturned) = 0;
    
    virtual VOID  PowerUp() {}
    virtual VOID  PowerDown() {}    
};

#endif // __FMD_HXX_

⌨️ 快捷键说明

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